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 / ZCPR33 / Z3-33 / Z3KEY14.LBR / Z3KEYRCP.DQC / Z3KEYRCP.DOC
Text File  |  2000-06-30  |  16KB  |  336 lines

  1.  
  2.                                 Z 3 K E Y . R C P
  3.  
  4.  
  5.                          A Keyboard Redefinition Program
  6.                                V1.4 MAY 11 1986
  7.  
  8.                     Copyright (c) 1985,1986 Arnold L. Bailey
  9.              Z3KEY.RCP may be used for non-commercial purposes only.
  10.              No commercial use of Z3KEY.RCP may be made without the
  11.                       author's express written permission.
  12.  
  13.  
  14. áááááááá1.░ INTRODUCTION
  15.  
  16. ááááááááZ3KEY.RC╨á i≤ ß ZCPR│ Residen⌠ commanΣ processo≥ tha⌠ allow≤á thσ ì
  17. ááááááááuse≥á t∩á assigε characte≥ string≤ t∩ keys«á Wheε ß ke∙ havinτá ß ì
  18. áááááááástrinτ defineΣ iε thi≤ wa∙ i≤ struck¼á thσ defineΣ string¼ rathe≥ ì
  19. ááááááááthaε thσ characte≥ normall∙ associateΣ witΦ thσ key¼ i≤ delivereΣ ì
  20. áááááááát∩ thσ prograφ runninτ a⌠ thσ time.
  21.  
  22. ááááááá Unlikσá ke∙ redefinitioε program≤ fo≥ CP/═ whicΦ storσá thσá re- ì
  23. áááááááádefinitioεá prograφ jus⌠ belo≈ thσ CC╨ anΣ protec⌠ i⌠ froφ ß warφ  ì
  24. ááááááááboot¼á Z3KEY.RC╨ i≤ storeΣ iε higΦ memor∙ anΣ almos⌠ 4╦ oµá extrß  ì
  25. ááááááááTP┴ become≤ available.
  26.  
  27. ááááááááAnothe≥á advantagσ ove≥ somσ othe≥ Publiπ Domaiε program≤ i≤ tha⌠ ì
  28. ááááááááthσ packinτ algorithφ useΣ onl∙ require≤ ▒ bytσ oµ overheaΣ fo≥ ß ì
  29. ááááááááke∙á definition«á Fo≥ examplσ re-defininτ 'Aº t∩ 'Bºá woulΣá onl∙ ì
  30. áááááááárequirσá │ byte≤ iε thσ ke∙ looku≡ table«á A≤ ke∙ definitioεá arσ ì
  31. ááááááááadded¼á thσá tablσ i≤ automaticall∙ compacteΣ t∩ minimuφ sizσ anΣ ì
  32. áááááááápreviou≤ definition≤ oµ ß giveε ke∙ arσ deleted« 
  33.  
  34. ááááááááKe∙á definition≤ ma∙ bσ loadeΣ froφ file≤á containinτá previousl∙ ì
  35. áááááááásaveΣ definitions¼á o≥ the∙ ma∙ bσ defineΣ on-the-fly¼ eveε whilσ ì
  36. ááááááááßá prograφ i≤ running«á BotΦ norma∞ key≤ (i.e«á key≤ generatinτ ß ì
  37. áááááááásinglσá character⌐á anΣá key≤á generatinτá escapσá sequence≤á arσ ì
  38. áááááááásupported« Als∩ supporteΣ arσ Supe≥ Shif⌠ sequence≤ fo≥ keyboard≤ ì
  39. ááááááááwithou⌠ functioε keys.
  40.  
  41. ááááááááThσ maximuφ lengtΦ oµ thσ defineΣ strinτ i≤ thσ lengtΦ oµ thσ ke∙ ì
  42. áááááááátablσ spacσ iε thσ RCP« Thσ numbe≥ oµ key≤ tha⌠ caε bσ re-defineΣ ì
  43. áááááááái≤ limiteΣ onl∙ b∙ thσ storagσ sizσ oµ thσ table«á Fo≥ examplσ iµ ì
  44. ááááááááßá Dvoraδá KeyboarΣ definitioε wa≤ beinτá created¼á eacΦá oµá 12╕ ì
  45. áááááááádifferen⌠á ASCI╔ key≤ woulΣ usσ │ byte≤ oµ storagσ fo≥ ß tota∞ oµ ì
  46.         38┤ byte≤ oµ thσ 68░ bytσ table«á Thi≤ stil∞ leave≤ ß lo⌠ oµ rooφ ì
  47.         fo≥ macr∩ anΣ Supe≥ Shif⌠ ke∙ definitions.
  48.  
  49. áááááááá2.░ OPERATION
  50.  
  51. ááááááááZ3KEY.RC╨ V1.┤ i≤ packageΣ witΦ thσ publiπ domaiε ZAS═ assembler.
  52. ááááááááAls∩ thσ filσ Z3KEY.ZE╪ i≤ includeΣ t∩ automaticall∙ assemblσ anΣ ì
  53. áááááááárenamσá thσ file≤ properly«á Thσ onl∙ filσ yo⌡ havσ t∩ adΣ i≤ thσ ì
  54. ááááááááfilσá Z3BASE.LI┬ whicΦ wa≤ useΣ t∩ definσ you≥ versioε oµá ZCPR3« ì
  55. ááááááááPu⌠ thσ Z3BASE.LI┬ filσ oε thσ samσ disδ a≤ thσ othe≥ Z3KE┘ file≤ ìèááááááááand type the command:
  56.  
  57. ááááá   ZEX Z3KEY
  58.  
  59. ááááááááiµ al∞ thσ file≤ arσ availablσ thσ he° filσ Z3KEYRCP.HE╪ wil∞á bσ ì
  60. áááááááácreated¼ loadeΣ b∙ MLOAD.CO═ anΣ renameΣ t∩ Z3KEY.RCP« T∩ instal∞ ì
  61. ááááááááthe newly created RCP type in:
  62.  
  63. ááááááááLDR Z3KEY.RCP
  64.  
  65. ááááááááThσ Z3KEY.CO═ utilit∙ i≤ no≈ selµ installing«á Thσ onl∙ thinτ yo⌡ ì
  66. ááááááááhavσá t∩á determinσá i≤á thσ addres≤ oµá thσá Systeφá Environmen⌠ ì
  67. ááááááááDescripto≥á fo≥á you≥á system«á Thi≤ caε bσ donσ b∙á usσá oµá thσ ì
  68. ááááááááSHOW.CO═ prograφ o≥ MU3.COM«á MU3.CO═ wil∞ automaticall∙á displa∙ ì
  69. ááááááááthe first page of the System Environment Descriptor when run.
  70.  
  71. ááááááááTo install Z3KEY.COM the first time it is run type the command:
  72.  
  73. ááááááááZ3KE┘ HHH╚    {Wherσ HHH╚ i≤ thσ addres≤ oµ thσ Environment} ì
  74. áááááááá              {Descriptor in hexadecimal}
  75.  
  76. ááááááááZ3KEY.CO═á ma∙á als∩á bσ installeΣ usinτ Z3INS.CO═ iεá thσá usua∞ ì
  77. áááááááámanner.
  78.  
  79.  
  80. ááááááááZ3KEY.RCP contains the following commands:
  81.  
  82. áááááááá1«  KEY½  Turn≤ oε thσ ke∙ redefinitioε program« Thσ use≥ ma∙ no≈ ì
  83. áááááááá    redefine keys as necessary.
  84.  
  85. áááááááá2«á  KEY-  Turn≤ ofµ thσ ke∙ re-definitioε program«á Thi≤ prograφ ì
  86. áááááááá     mus⌠á bσ ruε beforσ replacinτ Z3KEY.RC╨ witΦ anothe≥ RC╨á t∩ ì
  87. áááááááá     avoid trashing the BIOS conin and const pointers.
  88.  
  89. áááááááá3«á   CASE½ Turn≤ oε thσ casσ translatioε flag« Wheε thi≤ flaτ i≤ ì
  90. áááááááá      oεá an∙á characte≥á sen⌠ a≤ par⌠ oµá ßá LeaΣá Iεá characte≥ ì
  91. áááááááá      sequencσá wil∞á bσ automaticall∙ upcased«á Thi≤ i≤ useΣá t∩ ì
  92. áááááááá      avoiΣ casσ sensitivσ Supe≥ Shif⌠ sequences«á Fo≥ examplσ iµ ì
  93. áááááááá      '\º i≤ useΣ a≤ thσ LeaΣ Iε character¼ thσ sequencσ '\aº anΣ ì
  94. áááááááá      '\A' would be equivalent.
  95.  
  96. áááááááá4.    CASE- Turns off the case translation flag.
  97.  
  98. áááááááá5«á   KSTA╘  Display≤ whethe≥ Z3KE┘ i≤ activσ anΣ thσ statu≤á oµ ì
  99. áááááááá      the case flag.
  100.  
  101. áááááááá6«á   KEY╙á  Display≤á thσ presen⌠ ke∙ definition≤ ß pagσá a⌠á ß ì
  102. áááááááá      time.
  103.  
  104. ááááááááThσ attention/terminatioε characte≥ i≤ useΣ t∩ gaiε thσ attentioε  ì
  105. ááááááááoµá Z3KEY.RC╨á iε orde≥ t∩ ente≥ ß ne≈ ke∙ definition«á Thσá samσ  ì
  106. áááááááácharacte≥ i≤ useΣ t∩ terminatσ thσ definitioε string«á Thus¼ thi≤  ì
  107. áááááááácharacte≥á shoulΣ bσ onσ tha⌠ i≤ seldoφ iµ eve≥ used¼á botΦá froφ  ì
  108. ááááááááthσá keyboard¼á anΣá iε ke∙á definitioεá strings«á Thσá attentioε ì
  109. áááááááácharacter may be output by pressing it twice in a row.è
  110. ááááááááThσ lead-iε characte≥ i≤ thσ firs⌠ characte≥   generateΣ b∙á key≤ ì
  111. ááááááááwhicΦá generatσ escapσ sequence≤ rathe≥ thaε  singlσá characters« ì
  112. ááááááááThi≤á i≤ almos⌠ alway≤ thσ ESCAP┼ characte≥  (ASCI╔ 2╖á decimal)« ì
  113. ááááááááIµá thσá DELA┘ paramete≥ i≤ increaseΣ i⌠ i≤ possiblσ t∩á usσá thσ ì
  114. áááááááálead-iεá characte≥ a≤ ß Supe≥ Shif⌠ characte≥ a≤ describeΣ below« ì
  115. ááááááááIµ thσ DELA┘ paramete≥ i≤ se⌠ t∩ 0¼á thσ dela∙ afte≥ thσá lead-iε ì
  116. áááááááácharacte≥á become≤á infinitσ anΣ thσ nex⌠ characte≥ wil∞á bσá thσ ì
  117. ááááááááonly one accepted as part of the sequence.
  118.  
  119. ááááááááOncσ KEY½ ha≤ beeε run¼ strikinτ thσ attentioε characte≥ ke∙ wil∞ ì
  120. áááááááácausσ Z3KEY.RC╨ t∩ responΣ witΦ thσ followinτ prompt:
  121.  
  122. ááááááá Key:
  123.  
  124. ááááááááStrikσá thσá ke∙á yo⌡á wisΦ t∩á define«á Thσá characte≥á normall∙ ì
  125. áááááááágenerateΣá b∙ thσ ke∙ wil∞ bσ displayed¼á followeΣ b∙á aεá equal≤ ì
  126. áááááááásign«á Supposσá fo≥ example¼á yo⌡ wisheΣ t∩ definσ thσá control-╦   ì
  127. áááááááákey« Thσ followinτ woulΣ appea≥ afte≥ strikinτ CTRL-K║ 
  128.  
  129. ááááááá Key║ ^╦ =
  130.  
  131. ááááááááNo≈á ente≥á thσá definitioε string¼á followeΣá b∙á thσá attentioε ì
  132. áááááááácharacter«áá Supposσááyouáá wisheΣáá t∩á definσá ^╦áá a≤áá "MCOP┘ ì
  133. ááááááááA0:=B0:*.*^M"«á Thσá followinτ woulΣ bσ displayeΣ jus⌠ beforσáyou ì
  134. ááááááááhi⌠ thσ attentioε characte≥ t∩ terminatσ thσ definition:
  135.  
  136. ááááááááKey║ ^╦ ╜ MCOPY A0:=B0:*.*^M
  137.  
  138. ááááááááAfte≥ entr∙ oµ thσ terminatioε character¼ thσ ke∙ definitioε linσ ì
  139. áááááááái≤á erased«á Notσ tha⌠ character≤ overwritteε b∙á thσá definitioε ì
  140. áááááááálinσ arσ no⌠ rewritten¼ bu⌠ replaceΣ witΦ spaces.
  141.  
  142. ááááááááA⌠ thi≤ point¼ thσ ke∙ ha≤ beeε defined¼ anΣ strikinτ thσ defineΣ ì
  143. ááááááááke∙á wil∞ resul⌠ iε thσ definitioε strinτ beinτ delivereΣ t∩á thσ ì
  144. áááááááácurren⌠ prograφ.
  145.  
  146. ááááááááIµá yo⌡á  wisΦá t∩ disablσ ß definitioε jus⌠ definσá thσá ke∙á a≤ ì
  147. ááááááááitself« Therσ i≤ plent∙ oµ rooφ iε thσ tablσ fo≥ thi≤ kinΣ oµ re-ì
  148. áááááááádefinition. For example  Key: ^K = ^K
  149.  
  150. áááááááá2.2 Super Shift mode
  151.  
  152. ááááááááThσá Supe≥á Shif⌠ modσ i≤ createΣ b∙ increasinτá thσá Dela∙á timσ ì
  153. ááááááááusinτá thσá Z3KEY.CO═ utilit∙ a≤ describeΣá below«á Normall∙á thσ ì
  154. áááááááádela∙á i≤á se⌠ s∩ tha⌠ i⌠ i≤ jus⌠ lonτ enougΦ t∩ allo≈á thσá nex⌠ ì
  155. áááááááácharacte≥á sen⌠á b∙ ß functioε ke∙ t∩ bσ receiveΣ bu⌠ time≤á ou⌠ ì
  156. áááááááábeforσá anothe≥á ke∙ caε bσ entereΣá manually«á Thi≤á allow≤á thσ ì
  157. ááááááááprograφá t∩á tel∞á thσá differencσ betweeε aεá ESCAP┼á ke∙á beinτ ì
  158. áááááááápresseΣá anΣá aεá escapσ characte≥ tha⌠ i≤á thσá beginninτá oµá ß ì
  159. ááááááááfunction key sequence.
  160.  
  161. ááááááááWheεá thσ dela∙ timσ i≤ increaseΣ sufficientl∙ yo⌡ caε ente≥á thσ ì
  162. ááááááááothe≥á character≤á iεá ß sequencσ manually«á Fo≥ examplσá iµá yo⌡ ì
  163. áááááááádefinσá thσ '\º characte≥ a≤ thσ lead-iε characte≥ enterinτá '\pº ìèáááááááácoulΣá bσá useΣá t∩ generatσ 'procedurσ '«á Thi≤á give≤á yo⌡á thσ ì
  164. ááááááááequivalent of a whole keyboard full of function keys.
  165.  
  166. ááááááááJus⌠á increasinτ thσ dela∙ allow≤ multiplσ characte≥ sequence≤ t∩ ì
  167. áááááááábσ entereΣ afte≥ ß lead-iε characte≥ a≤ lonτ a≤ the∙ arσá entereΣ ì
  168. ááááááááquickly enough.
  169.  
  170. ááááááááSettinτá thσá dela∙ t∩ ░ make≤ thσ prograφ wai⌠ afte≥á ßá lead-iε ì
  171. áááááááácharacte≥á a≤á lonτ a≤ necessar∙ fo≥ thσá nex⌠á character«á SucΦ ì
  172. áááááááásequence≤á arσ alway≤ tw∩ characters¼á thσ lead-iε characte≥á anΣ ì
  173. ááááááááthσá followinτ character«á Thi≤ i≤ simila≥ t∩ thσ SmartKe∙ methoΣ ì
  174. ááááááááof Super Shift.
  175.  
  176. áááááááá2.3 Z3KEY.COM Utility
  177.  
  178. ááááááááThσá Z3KEY.CO═ utilit∙ allow≤ yo⌡ t∩ savσ definitions¼á re-definσ ì
  179. ááááááááthσ attentioε anΣ lead-iε characters,se⌠ anΣ rese⌠ thσ casσá flaτ ì
  180. ááááááááanΣ se⌠ thσ Dela∙ time.
  181.  
  182. ááááááááI⌠á i≤á writteε iε Turb∩ Pasca∞ anΣ thσ sourcσ codσ i≤á included« ì
  183. ááááááááUse Z3INS.COM to install the program for your system.
  184.  
  185. áááááááá2.3.1 Saving and Loading Key Definitions
  186.  
  187. ááááááááChoosinτ thσ 'Sº Savσ optioε wil∞ promp⌠ fo≥ thσ namσ t∩ savσ thσ ì
  188. áááááááádefinitioεá to«á Iµá fo≥á examplσ iµ ß numbe≥ oµ Pasca∞á ke∙á arσ ì
  189. áááááááádefineΣ yo⌡ woulΣ ente≥ PASKE┘ a≤ ß possiblσ namσ t∩ savσá under« ì
  190. ááááááááThσ namσ wil∞ alway≤ havσ thσ extensioε .RC╨ appendeΣ t∩ it«á Thσ ì
  191. áááááááánamσ tha⌠ ß ke∙ definitioε i≤ saveΣ unde≥ wil∞ bσ inserteΣ iε thσ ì
  192. ááááááááfilσá anΣ displayeΣ wheε KEY½ i≤ ruε t∩ activateΣ i⌠ a⌠á ßá late≥ ì
  193. áááááááátime.
  194.  
  195. ááááááááT∩á loaΣá ßá previousl∙ saveΣ ke∙ definitioε usσá thσá ZCPR│á LD╥ ì
  196. ááááááááprogram to load it like any RCP.
  197.  
  198. áááááááá2.3.2 Changing the Attention and Lead-In Characters
  199.  
  200. ááááááááChoosinτá thσá 'Aº fo≥ Attentioε o≥ 'Lº fo≥ Lead-Iεá optioεá wil∞ ì
  201. áááááááápromp⌠á fo≥á ßá ne≈á attentioεá o≥á lead-iεá character«á Fo≥á thσ ì
  202. ááááááááattentioεá characte≥ usσ ß ver∙ unlikel∙ characte≥ sucΦ a≤ ^▌á o≥ ì
  203. áááááááá^_. 
  204.  
  205. ááááááááFo≥ thσ lead-iε characte≥ usσ thσ firs⌠ characte≥ oµ thσ functioε ì
  206. ááááááááke∙á sequence≤á you≥á termina∞ produces«á Fo≥á examplσá thσá Wysσ ì
  207. áááááááátermina∞á use≤á ^┴á a≤ thσ firs⌠ characte≥ oµ it'≤á F▒á thr⌡á F1╢ ì
  208. áááááááácharacters. 
  209.  
  210. ááááááááIµ yo⌡ wan⌠ t∩ usσ thσ Supe≥ Shif⌠ modσ usσ an∙ ke∙ yo⌡ like« Thσ ì
  211. áááááááá'\º is a good choice on most machines.
  212.  
  213. áááááááá2.3.3 Changing the Delay Time
  214.  
  215. ááááááááChoosinτá thσá 'Dº fo≥ Dela∙ optioε wil∞ promp⌠ fo≥ ßá ne≈á dela∙ ì
  216. ááááááááloo≡á numbe≥á an∙á numbe≥ froφ ░ t∩ 32,00░ ma∙á bσá entered«á Fo≥ ì
  217. áááááááánorma∞ functioε ke∙ usσ ß dela∙ oµ 20░ i≤ gooΣ fo≥ mos⌠ machines« ìèááááááááFo≥á Supe≥á Shif⌠ modσ ß numbe≥ oµ 100░á i≤á usuall∙á good«á Thi≤ ì
  218. áááááááánumbe≥á i≤ purel∙ empirica∞ s∩ experimen⌠ t∩ finΣ wha⌠ suit≤á yo⌡ ì
  219. áááááááábest.
  220.  
  221. áááááááá2.3.4 Changing Expansion Rate Count
  222.  
  223. ááááááááChoosinτá thσ 'Rº fo≥ Expansioε Ratσ optioε wil∞ promp⌠ fo≥ ß ne≈ ì
  224. ááááááááexpansioεá ratσá count«á An∙á numbe≥ betweeε ░á anΣá 25╡á ma∙á bσ ì
  225. ááááááááentered« Thσ expansioε ratσ coun⌠ i≤ thσ numbe≥ oµ time≤ tha⌠ thσ ì
  226. ááááááááne≈á Consolσá Statu≤á routinσá wil∞á bσá calleΣá beforσá ßá macr∩ ì
  227. ááááááááexpansioεá characte≥ wil∞ bσ flaggeΣ a≤ available«á Thi≤ prevent≤ ì
  228. ááááááááprogram≤á tha⌠ tr∙ t∩ flusΦ thσ incominτ character≤ oεá star⌠á u≡ ì
  229. ááááááááfroφá throwinτá awa∙ par⌠ oµ thσ definition«á Turb∩ pasca∞ i≤á aε ì
  230. ááááááááexamplσ oµ sucΦ ß program«á Iµ ß ke∙ i≤ defineΣ t∩ star⌠ u≡ Turb∩ ì
  231. áááááááápasca∞á a≤:
  232.  
  233. áááááááá   'TURBO^MYEº 
  234.  
  235. ááááááááanΣ thσ expansioε coun⌠ i≤ se⌠ t∩ ░ thσ ┘ anΣ ┼ wil∞ bσ discardeΣ ì
  236. ááááááááb∙á thσ program«á Settinτ thσ expansioε coun⌠ t∩ ▓ wil∞ resul⌠ iε ì
  237. ááááááááprope≥ operation.
  238.  
  239. áááááááá2.3.5 Compiling definitions from a text file
  240.  
  241. ááááááááChoosinτá thσ 'Fº optioε wil∞ promp⌠ fo≥ thσ namσ oµ ß tex⌠á filσ ì
  242. áááááááácontaininτá ke∙á definitions«á aεá examplσ oµ thσá forma⌠á i≤á a≤ ì
  243. ááááááááfollows:
  244.  
  245. áááááááá;comment≤ begiε witΦ ß semicolon
  246. áááááááá;thσá ke∙ word≤ ATTENTION,LEADIN,DELAY,EXPANSION,FILE¼
  247. áááááááá;anΣáCAS┼ se⌠ the correspondinτávalues«áThe∙áshoulΣácomσáfirs⌠á 
  248. áááááááá;iε thσ filσ otherwisσ they defaul⌠á t∩ thσ presen⌠ value≤ iε 
  249. áááááááá;Z3KEY.RCP«á Iµ thσ CAS┼ i≤á O╬ thσ key≤ being
  250. áááááááá;defineΣ wil∞ bσ upcaseΣ beforσ beinτ pu⌠ iε thσ table.
  251. áááááááá;
  252. áááááááá;Contro∞ character≤ arσ precedeΣ b∙ ß '^'«á 
  253. áááááááá;Iµ yo⌡ wan⌠ t∩ ente≥ ß '^º in ßá definitioεá usσá aε 
  254. áááááááá;imbeddeΣ control▐á instead«á I⌠á wil∞á bσ converteΣ t∩ ß '^'
  255. áááááááá;b∙ thσ compiler.
  256.  
  257. ááááááááATTENTION=^]
  258. ááááááááLEADIN=\
  259. ááááááááDELAY=0
  260. ááááááááEXPANSION=2
  261. ááááááááFILE=PASKEY
  262. ááááááááCASE=off
  263. áááááááá\w=write(
  264. áááááááá\W=writeln(
  265. áááááááá\r=read(
  266. áááááááá\R=readln(
  267. áááááááá\a=At(
  268. áááááááá\^_=cara⌠ underline
  269. áááááááá^M=^M
  270. áááááááá\p=procedurσ 
  271. áááááááá\f=functioε èáááááááá=caret
  272. áááááááá\t=turbo^MY
  273. áááááááá\b=begin^Mend;^A^A^M
  274. áááááááá\u=repeat^munti∞ ;^h
  275. áááááááá\P=prograφ 
  276.  
  277. ááááááááThis example is included in the library as TEST.DEF.
  278.  
  279.  
  280.  
  281.  
  282. áááááááá2.3.6 Displaying key definitions.
  283.  
  284. ááááááááChoosinτá thσ 'Kº optioε wil∞ displa∙ thσ presentl∙ defineΣá lis⌠ ì
  285. ááááááááof definitions in Z3KEY.RCP,
  286.  
  287.  
  288. áááááááá2.4 Disabling Z3KEY
  289.  
  290. ááááááááEnterinτá KEY- from ß thσ commanΣ linσ wil∞ disablσ thσ Z3KEY.RCP« ì
  291. ááááááááI⌠ wil∞ stil∞ bσ installeΣ anΣ ma∙ bσ reactivateΣ a⌠ an∙ timσá b∙ ì
  292. ááááááááenterinτ KEY½ « KEY- mus⌠ bσ ruε beforσ loadinτ ß ne≈ RC╨ becausσ ì
  293. ááááááááthσá BIO╙á jum≡ tablσ ha≤ beeε patcheΣ t∩ intercep⌠á an∙á consolσ ì
  294. áááááááácalls«á Iµá yo⌡ jus⌠ loaΣ thσ ne≈ RC╨ thσ bio≤ wil∞ no⌠ finΣá thσ ì
  295. ááááááááproper code and the system will crash, guaranteed.
  296.  
  297.     
  298.     3.0 ADVANCED TOPICS
  299.  
  300. áááááááá 3.▒ Creatinτ Definition≤ Containinτ Non-keyboarΣ Characters
  301.  
  302. ááááááááDefinition≤ ma∙ bσ createΣ containinτ character≤ no⌠ generateΣ b∙ 
  303. ááááááááan∙ ke∙ oε thσ computer'≤ keyboarΣ througΦ direc⌠ modificatioε oµ 
  304. ááááááááthσ ke∙ definitioε file(s)« Thi≤ migh⌠ bσ usefu∞ t∩ adΣ ß DELET┼ 
  305. ááááááááke∙ t∩ ß compute≥ havinτ onl∙ ß BACKSPAC┼ key¼ fo≥ example.
  306.  
  307. ááááááááIεá orde≥á t∩ d∩ this¼á thσ structurσ oµ thσ ke∙ definitioεá filσ  ì
  308. áááááááámus⌠á bσá understood«á ┴á ke∙ definitioε filσá consist≤á oµá nul∞ ì
  309. áááááááádelimiteΣ  logica∞ record≤ oµ thσ ke∙ character≤ t∩ bσá redefineΣ ì
  310. ááááááááfolloweΣá b∙á thσá  definitioε strinτ anΣ terminateΣá b∙á ßá nul∞ ì
  311. áááááááácharacter«á Thσ beginninτ oµ thσ tablσ i≤ markeΣ b∙ thσ attentioε ì
  312. áááááááácharacte≥á followeΣ b∙ ▓ leadiε character≤ followeΣ b∙ ßá 0«á Thσ ì
  313. áááááááádua∞á lead-iεá characte≥á serve≤á t∩á definσá ßá singlσáá lead-iε ì
  314. áááááááácharacte≥á a≤ ß singlσ lead-iε character«á EacΦ oµ thσá followinτ ì
  315. áááááááádefinitions looks as follows.
  316.  
  317. áááááááá[\pprocedure]░á whicΦ define≤ '\pº a≤ procedurσ wherσ '\º i≤á thσ ì
  318. áááááááá                leadin character.ì
  319.  
  320. ááááááááThσ followinτ i≤ aε examplσ oµ thσ sequencσ oµ character≤ useΣ t∩  ì
  321. áááááááádefinσá CTRL-─á t∩ bσ DELETE¼á assuminτ thσ keyboarΣá beinτá useΣ  ì
  322. áááááááácanno⌠ generatσ thσ DELET┼ character«
  323.  
  324. ááááááááIn assembler:
  325. áááááááá  èáááááááá       DB      04,07FH,0
  326.  
  327. ááááááááVersioεá 1.▓á anΣ later║á 
  328. ááááááááThσ abovσ explanatioε i≤ modifieΣ a≤ follows.
  329. ááááááááIµá thσá KEYDE╞á variablσ i≤ se⌠ t∩ truσá iεá Z3KEYRCP.LI┬á whicΦ ì
  330. ááááááááenable≤á thσ KEY╙ displa∙ option¼á thσ translatioε portioε oµ thσ ì
  331. áááááááátablσ mus⌠ havσ thσ higΦ bi⌠ se⌠ fo≥ eacΦ oµ thσ characters« Thi≤ ì
  332. áááááááái≤ s∩ thσ routinσ caε tel∞ thσ translatioε froφ thσ origina∞á ke∙ ì
  333. ááááááááportioεá oµ thσ tota∞ definition«á Thσ deletσ portioε abovσ woulΣ ì
  334. áááááááábe modified like so:
  335. áááááááá       DB   04,0FFH,0  to define ^D as DELETE
  336.