home *** CD-ROM | disk | FTP | other *** search
/ Garbo / Garbo.cdr / pc / memutil / respro12.lzh / RESPRO.DOC < prev   
Text File  |  1987-03-20  |  9KB  |  212 lines

  1. Eric Gans
  2. French Department, UCLA
  3. Los Angeles CA, 90024
  4.  
  5.                          RESPRO.DOC v1.2
  6.                             03/19/86
  7.  
  8. Version 1.2:
  9.      Enabled  command-line  operation.  Fixed  bug  that  allowed 
  10. loading a second copy of RESPRO.  RESPRO now checks  specifically 
  11. for  the  presence of SideKick; it disables itself if  there  are 
  12. over 24 memory-resident programs loaded.
  13.  
  14. Version 1.1: Added "C" command to clear memory, options to change 
  15. "hot keys."  RESPRO now checks for programs removed from  memory. 
  16. Also  a  few  minor  changes to  handle  troublesome  cases  like 
  17. Sidekick.
  18.  
  19.                               * * *
  20.  
  21. If  like  most  DOS users you have filled your  RAM  with  memory 
  22. resident  programs, RESPRO is for you.  RESPRO will handle up  to 
  23. 24  memory-resident  programs.   It allows  you  to  disable  and 
  24. reactivate  them at any time, from within any  application.   You 
  25. can  clear  your memory of all resident programs, or  remove  the 
  26. last program loaded regardless of what it says in its user manual 
  27. or DOC file.
  28.  
  29. RESPRO also includes an "uncrash" feature that allows you to exit 
  30. a hung program under most circumstances without having to  reboot 
  31. your computer.
  32.  
  33.               How Do Memory-Resident Programs Work?
  34.  
  35. Memory-resident programs are loaded like any others; they  remain 
  36. resident  because DOS allows them to keep the  memory  originally 
  37. allocated  to them.  If you load a series of such programs,  they 
  38. fill your RAM from the bottom up.
  39.  
  40. But residing is only useful if these programs can remain  active.  
  41. They  accomplish  this by capturing "interrupt vectors"  used  by 
  42. various computing activities.  Most resident programs look at one 
  43. or both of the keyboard interrupts (9 and 16h) to see if you have 
  44. typed  the  particular combination of  characters  that  triggers 
  45. their operations.  If not, control is passed to the next  program 
  46. down  the  list,  and  eventually to the  BIOS  that  prints  the 
  47. character on the screen.
  48.  
  49.                       How Does RESPRO Work?
  50.  
  51. RESPRO  itself operates by capturing interrupt vectors and  using 
  52. its  time  of  control  to  record  information  concerning   the 
  53. interrupts  used  by  other  memory-resident  programs.    RESPRO 
  54. records  all  changes  that follow the loading  of  new  resident 
  55. programs.   This allows it to disable/reactivate  memory-resident 
  56. programs   by   bypassing/restoring  these   programs'   captured 
  57. interrupts.  RESPRO 1.1+ also checks to see if a  memory-resident 
  58. program has been removed independently of its own operations.  If 
  59. the  removed  program  was not the last loaded,  RESPRO  gives  a 
  60. warning message when you attempt to use it to disable,  activate, 
  61. or remove other programs.
  62.  
  63.                  Set-Up and Memory Requirements
  64.  
  65. To  use RESPRO effectively, you should load it before  any  other 
  66. memory-resident  programs  (including those that  tell  you  they 
  67. should be loaded first).  RESPRO will only "see" programs  loaded 
  68. after  it;  it will always appear as #1 on its  list  of  memory-
  69. resident programs.
  70.  
  71. RESPRO occupies about 11 K of memory, largely for buffers to hold 
  72. interrupt data.  It requires DOS 2.0 or higher.
  73.  
  74.                         RESPRO Operation
  75.  
  76. RESPRO is evoked by typing Alt ` (grave accent).  (See below  for 
  77. how  to  change this.)  On evocation, and after any  command,  it 
  78. displays a list of memory-resident programs, their load addresses 
  79. and the number of bytes they occupy.
  80.  
  81. The resident command menu permits the following operations:
  82.      
  83.      (V)erbose toggle:  Entering "v" toggles a mode that displays 
  84. the  interrupts  captured  by each  resident  program  and  their 
  85. addresses   (segment:offset).    This  is  chiefly  of   use   to 
  86. programmers.
  87.  
  88.      (R)emove  last:  This will remove the last resident  program 
  89. from memory,  freeing the memory for other  applications.  RESPRO 
  90. will  not  allow  you to perform this operation  from  within  an 
  91. application  that has changed some of the interrupt vectors  used 
  92. in  the  program(s) you wish to remove,  since on  exiting  these 
  93. vectors  will  be reset to locations in the killed  program  that 
  94. will  eventually  be  overwritten.  (It  makes  an  exception  if 
  95. Sidekick  has "recaptured" the interrupt, as it does  in  certain 
  96. cases  if you load a resident program after it.)  Because  RESPRO 
  97. cannot check for the future memory demands of your  applications, 
  98. this command should always be used with caution from within other 
  99. programs.
  100.  
  101.      (C)lear  memory:    This  will  remove  all  memory-resident 
  102. programs  above RESPRO itself.   If your current application  has 
  103. reset  any  interrupt  vectors you will be required  to  exit  it 
  104. before using this command.
  105.  
  106.      (D)isable  #:  Entering "d3" will disable program  #3.  This 
  107. operation may be performed without danger at any time,  since  it 
  108. does not remove the program from memory.  A disabled program will 
  109. not  use  processor  time or perform  any  other  function.   Any 
  110. program thus disabled can be reactivated with the (A) command.
  111.  
  112.      (A)ctivate  #:  Enter  "a3" to reactivate  the  program  you 
  113. disabled  with "d3".   This operation too can be performed safely 
  114. at any time.
  115.  
  116.      Type <ESC> to exit. (No CR is necessary.)
  117.  
  118. If  you disable RESPRO it will remain in memory but no longer  be 
  119. operative, and you will no longer be able to call up its  screen.  
  120. This is the one (obvious) exception to the rule that all disabled 
  121. programs can be reactivated.
  122.  
  123. A  few  applications  (like Xywrite) that  capture  the  keyboard 
  124. interrupts  for themselves will not let you call up RESPRO  while 
  125. they  are  running.   This will not be the case  for  most  word-
  126. processors, spreadsheets, database programs, or BASIC.
  127.  
  128.               *!*!*   Command-line Options   *!*!*
  129.  
  130. Version 1.2 allows the use of the D, A, R and C commands from the 
  131. DOS  command  line.   RESPRO must be already in  memory  for  the 
  132. switches  to  function; it cannot be loaded if any  switches  are 
  133. included in the command line.
  134.  
  135. The chief value of these options is to allow the use of RESPRO in 
  136. application-specific batch files.  You can choose which  resident 
  137. programs  are  to be active while running  a  given  application, 
  138. disable  the  others,  and reactivate them on exit;  or  you  can 
  139. remove and reload them.
  140.  
  141. Syntax: respro [/?][/r][/c][/d fn.ft][/a fn.ft] [/k][/u]
  142.  
  143. The '/?' switch gives a brief help message and exits the program.
  144.  
  145. The  '/r' and '/c' switches perform the same  operations  (remove 
  146. last program and clear) as entering 'r' or 'c' from the  resident 
  147. command  menu.   The disable/ enable functions  take  a  filename 
  148. rather than a number.  The filename must include the extension.
  149.  
  150. The  '/k' (formerly 'c') and '/u' switches are used for  changing 
  151. hotkeys (see below).
  152.  
  153. Any  combination of switches is allowed on the command line.   If 
  154. you  wish to disable or activate several programs, each  filename 
  155. must  be  preceded by the appropriate switch.  Switches  will  be 
  156. acted on from left to right.  Spaces are recommended for clarity, 
  157. but no space is allowed between the '/' and the switch letter.
  158.  
  159. NB - The '/c' switch (like the 'c' command) removes all  programs 
  160. above  RESPRO.   If  you want to remove RESPRO  as  well,  enter: 
  161. respro  /c /r   
  162.  
  163. To  remove  the  last  three  resident  programs  loaded,  enter:   
  164. respro /r /r /r
  165.  
  166. The  /k and /u switches are interactive and therefore not  suited 
  167. to automatic batch file operation.
  168.  
  169.                          Uncrash Feature
  170.  
  171. Since RESPRO keeps interrupt tables, it can handle this  function 
  172. more  gracefully than other such programs.  If you get caught  in 
  173. an endless loop but your keyboard is still alive, you can exit to 
  174. DOS  or  the  "parent" process (e.g.,  DEBUG)  by  simultaneously 
  175. pressing the CAPS LOCK and the SCROLL LOCK keys.  (This operation 
  176. is independent of the current status of these keys; see below for 
  177. how   to  change  them.)  We  can't  absolutely  guarantee   that 
  178. everything  will  be all right on exit, but  this  procedure  may 
  179. allow you to save files that would otherwise be lost.
  180.  
  181.                         Changing Hot Keys 
  182.  
  183. The key combinations used to evoke RESPRO may be changed by using 
  184. the following command-line switches:
  185.  
  186. respro /k (formerly 'respro c')  will change the keys for  normal 
  187. operation 
  188.  
  189. respro  /u  (formerly  'respro  u')  will  change  the  keys  for 
  190. "uncrash" operation
  191.  
  192. These  switches may be combined with each other and with  any  of 
  193. the other command-line switches.
  194.  
  195. Normal  operation uses an ASCII key plus a combination of  shifts 
  196. (Ctl,  Alt,  Lshift,  Rshift).  The uncrash  feature  requires  a 
  197. combination  of  Ins,  Caps Lock, Num Lock,  Scroll  Lock  and/or 
  198. SysReq (for AT users).  Hold the shift keys down an instant until 
  199. the program registers the new values.
  200.  
  201. These  changes will be recorded on disk, so RESPRO should  be  in 
  202. the  current  directory when running these commands.   They  will 
  203. take effect the next time RESPRO is loaded into memory.
  204.  
  205.                       RESLOG Compatibility
  206.  
  207. If  you use RESLOG along with RESPRO, you should be sure to  load 
  208. RESPRO first.  RESLOG will continue to operate even if RESPRO  is 
  209. disabled.
  210.  
  211.  
  212.                  I hope you enjoy using RESPRO.