home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 9 / FreshFishVol9-CD2.bin / bbs / util / mayflower.lha / MayFlower / CSR / CSR.doc < prev    next >
Encoding:
Text File  |  1994-06-10  |  12.6 KB  |  282 lines

  1.  
  2.                   Cancel System Requests 5.0 (19940303)
  3.  
  4.                              alias CSR
  5.  
  6.                         by  Stephen D. Childers
  7.  
  8. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  9. Program Description:
  10.  
  11.    1) It is normally used to auto-select the "Cancel" gadget (the
  12.       rightmost gadget) of a System Request, but can be used to
  13.       auto-select the leftmost gadget.
  14.  
  15.       If System Requests are pending before you run CSR then running
  16.       CSR in the disable mode will retro-cancel ALL System Requests.
  17.  
  18.    2) It can run from CLI or Workbench.
  19.  
  20.    3) Program can be made resident, but the only benefit of making it
  21.       resident is to bypass loading time when program is invoked.
  22.  
  23.    4) It keeps an internal count of how many System Requests were
  24.       auto-selected.
  25.  
  26.       The count can be displayed when the disable mode is in effect.
  27.       Use CLI option -c to display count. The count will also be
  28.       displayed when CSR is in window mode.
  29.  
  30.       Count will be zeroed upon enable mode.
  31.  
  32.    5) A Window mode option can be used from CLI or Workbench.
  33.  
  34.       Window mode is invoked from CLI by using option w.
  35.  
  36.          ie > CSR w
  37.          or > CSR wd   ; other options can be included
  38.          or > CSR we
  39.  
  40.       Also, when accessing CSR from CLI using the window mode option the
  41.       program will completely detach itself from the CLI and run as a
  42.       background process.
  43.  
  44.       If the background process should fail then it will attempt to notify
  45.       you of that fact with a System Request or a message in front of the
  46.       Workbench Screen title bar.
  47.  
  48.       Window mode is invoked from Workbench by setting the icon TOOL TYPE
  49.       to the following:
  50.  
  51.          "ICON MODE=window"
  52.  
  53.    6) Process will increase its own priority by 7.
  54.  
  55.    7) The window mode will contain the status of the CSR process and will
  56.       have the following lines:
  57.  
  58.       The first line will indicate if System Requests are "DISABLED" or
  59.       "enabled".
  60.  
  61.       The second line will display the count of System Requests that
  62.       have been automatically handled. Count will update automatically
  63.       every time a System Request has been handled.
  64.  
  65.       A third line is for various messages.
  66.  
  67.       The fourth line contains the program control gadgets, which are:
  68.  
  69.       "Enable" - Clicking this gadget will enable System Requests.
  70.                  Internal count will be erased.
  71.  
  72.       "DISABLE" - Clicking this gadget will disable System Requests.
  73.  
  74.       "Auto Select Toggle" - Click this to have negative or positive
  75.                              gadget to be automatically selected.
  76.  
  77.       Clicking the window's close gadget will cause window to close,
  78.       and it will leave intact whichever mode was previously chosen
  79.       before (ie "DISABLE" or "Enable" ).
  80.  
  81.    8) CSR can be used with the "Announce System Requests" (ASR) program.
  82.       ASR will notify you (audibly) as System Requests are handled
  83.       automatically.
  84.  
  85.    9) Option -p is for auto-selecting positive gadget.
  86.       Selection of the negative gadget is the internal default.
  87.  
  88.       >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  89.       >>>   CARELESS use of this option can ERASE data files !!!  <<<
  90.       >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
  91.  
  92.       Normally the CSR program is used to auto-select the negative
  93.       response gadget, which simulates a user selecting the rightmost
  94.       gadget of a System Request, and usually the words that are used
  95.       within the rightmost gadget are "Cancel", "Quit", "No", "False",
  96.       "Bad", "Exit", "Forget it!", etc.
  97.  
  98.       But under certain conditions it may be desirable to auto-select
  99.       the positive response gadget, which simulates a user selecting the
  100.       leftmost gadget of a System Request, and the words that are usually
  101.       used within the leftmost gadget are "Continue", "Yes", "True",
  102.       "Retry" (!!) , "ok to discard" (!!!!), etc.
  103.  
  104.       Certain programs requesting a "Retry" can loop for ever using this
  105.       option. If a program begins looping then you must change the
  106.       auto-select mode to the negative gadget, this should cause looping
  107.       to cease.
  108.  
  109.       Therefore, do NOT USE this option UNLESS you have a very good
  110.       understanding of the programs which will be running while this
  111.       option is active. So, with careful use and having an understanding
  112.       of the programs involved, this option can be used to switch between
  113.       two posible selections when used within script files.
  114.  
  115.       The CSR program will indicate which gadget will be automatically
  116.       selected by displaying one of the following lines:
  117.  
  118.          "System Requests DISABLED (negative select)"  <--- the default
  119.          "System Requests DISABLED (POSITIVE SELECT)"
  120.  
  121.       To select positive gadget from CLI mode type the following:
  122.  
  123.          ie  > CSR dp   ; disable using positive select gadget
  124.  
  125.          and > CSR d    ; switch to negative gadget
  126.          and > CSR dp   ; switch back to positive gadget
  127.          and > CSR w    ; open window display
  128.  
  129.       To select the positive/negative gadget when the Workbench TOOL TYPE
  130.       is set to "ICON MODE=toggle" then set the "AUTO SELECT" TOOL TYPE
  131.       to one of the following:
  132.  
  133.          "AUTO SELECT=negative"  or  "AUTO SELECT=positive"
  134.  
  135.       The positive/negative gadget can also be selected from window mode
  136.       (option w) by using the " Auto Select Toggle " gadget.
  137.  
  138.   10) The Workbench icon can be made to act as an disable/enable toggle
  139.       by setting the icon TOOL TYPE to the following mode:
  140.  
  141.          "ICON MODE=toggle"
  142.  
  143.       This means:
  144.       If System Requests are disabled when program is invoked from
  145.       Workbench then System Requests will be enabled, and if System
  146.       Requests are enabled when program is invoked from Workbench then
  147.       System Requests will be disabled.
  148.  
  149.       NOTE: CSR message reports will be written over the Workbench title
  150.       bar when icon is set to act as a toggle, and each message will
  151.       display for about 4 seconds and then go away.
  152.  
  153.   11) Program (when run from CLI) will interact with the 'c:Why' command
  154.       after program failures; this command may provide a more detailed
  155.       explanation of why the program failed.
  156.  
  157.       The 'Why' command should be used immediately after a program
  158.       failure to extract the last program's result code, because
  159.       that result code is changed upon the execution of the next CLI
  160.       command.
  161.  
  162.   12) Certain error reports will contain the name of the argument, file,
  163.       device, (etc) that is associated with failure when it occurs.
  164.  
  165. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  166. Purpose:
  167.  
  168.    One reason for needing to automatically cancel a System Request is
  169.    to allow a computer BBS (Bulletin Board System) process to continue
  170.    operating without waiting for the SYSOP to respond to System Requests.
  171.  
  172.    I once operated a BBS without disabling the System Requests and this
  173.    is what happened:
  174.  
  175.    A caller was downloading a file when suddenly the hard drive developed
  176.    a Read/Write error. This event caused the Operating System to place
  177.    the BBS process in the WAIT mode while it placed a System Request on
  178.    the screen. The caller disconnected. Meanwhile, the system continued
  179.    to WAIT patiently for SEVERAL HOURS befor the SYSOP returned to choose
  180.    the "Retry" or "Cancel" gadget, thereby allowing the BBS process to
  181.    continue running again.
  182.  
  183.    If the System Request function had been disabled then the BBS program
  184.    would have continued to run; the caller would have lost the download
  185.    BUT the caller would have been able to attempt another download of the
  186.    same file, or a different file, or go to the message base, or do a
  187.    normal BBS log out.
  188.  
  189. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  190. CLI Usage:
  191.  
  192.    > CSR [!|?|options]
  193.  
  194.         ! = show author info
  195.       options c = display count of cancels
  196.         ''    d = DISABLE System Requests
  197.         ''    e = enable System Requests
  198.         ''    p = auto-select POSITIVE gadget (negative is default)
  199.         ''    q = quiet; do not print CLI messages
  200.         ''    w = window interface display
  201.  
  202. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  203. Version History:
  204.  
  205.    The following information briefly describes changes or improvements
  206.    made to each version, and they will be described in descending order;
  207.    meaning latest version information begins first:
  208.    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  209.    Version 5.0 (19940303) -
  210.    1) Changed version numbering format. Program can now be used with the
  211.       "Version" command. Date within parenthesis is shown in a somewhat
  212.       international format as (yyyymmdd).
  213.    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  214.    Version 19930809 -
  215.    1) This new version will work with Workbench 2.0x versions.
  216.       Previous CSR versions will not operate as expected when used
  217.       with Workbench 2.0x or higher.
  218.    2) Removed a programming error involving the window option. Program
  219.       would print the error message "Unable to comply..." when CSR was
  220.       opened, disabled and closed from Workbench, and then accessed
  221.       from CLI.
  222.    3) Removed another error that only showed up when some one would
  223.       continuously click the mouse button over the CSR icon, thereby
  224.       spawning several CSR processes within a few moments of time,
  225.       thus causing a system crash.
  226.    4) CSR will no longer display text of last canceled request.
  227.    5) System Requests that are pending will be retro-canceled upon
  228.       running CSR in the disable mode.
  229.    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  230.    Version 19920706 -
  231.    1) CSR can be used with the "Announce System Requests" (ASR) program.
  232.       The CSR program must be run first before running the ASR program.
  233.          ie > CSR -dw   ; links CSR code in first
  234.             > ASR -ig   ; links ASR code after CSR
  235.    2) The Workbench icon can be made to act as an disable/enable toggle.
  236.    3) Window mode option added, can be used from CLI or Workbench.
  237.    4) Process will increase its own priority by 7 when in window mode.
  238.    5) Program can be made resident, but the only benefit of making it
  239.       resident is to bypass loading time when program is invoked.
  240.    6) This version of CSR will allow only one installation of its code.
  241.       Previous CSR versions would allow users to install the CSR code a
  242.       multiple of times depending upon the use of other programs.
  243.       In example, performing the following steps while using CSR
  244.       (version 19910828) and ASR (version 19910902) would install the
  245.       CSR code each time program was invoked:
  246.         ie > CSR i        ; 1st copy of CSR code installed in memory
  247.            > run ASR -ig  ; 1st copy of ASR code installed in memory
  248.            > CSR i        ; 2nd copy of CSR code installed in memory
  249.            > run ASR -ig  ; 2nd copy of ASR code installed in memory
  250.            > CSR i        ; 3rd copy of CSR code installed in memory
  251.            > run ASR -ig  ; 3rd copy of ASR code installed in memory
  252.       This can no longer happen with new versions of CSR or ASR.
  253.    7) Previous versions contained a minor bug when they attempted to
  254.       detect different versions, therefore, this version will not detect
  255.       previous versions. Previous versions should not be used.
  256.    8) Added option for auto-selecting negative or positive gadget.
  257.    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  258.    Version 19910828 -
  259.    1) The cancelation count will be displayed automatically in CLI or
  260.       Workbench during remove mode, but only if CSR was installed.
  261.    2) Improved error reporting.
  262.    3) Program (when run from CLI) will now interact with the 'c:Why'
  263.       command after program failures.
  264.    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
  265.    Version 19910714 - The first version.
  266.  
  267. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  268.          _   /X\   /X\   /X\   /X\   /X\   /X\   /X\   /X\   _
  269.         ( )=(_X_)=(_X_)=(_X_)=(_X_)=(_X_)=(_X_)=(_X_)=(_X_)=( )
  270.         //                                                   \\
  271.        ( )        8   I am the Lord: that is my name:        ( )
  272.        //      and my glory will I not give to another,       \\
  273.       ( )      neither my praise to graven images.            ( )
  274.        \\                                                     //
  275.        ( )         King James Holy Bible - Isaiah 42:8       ( )
  276.         \\   _ _   _ _   _ _   _ _   _ _   _ _   _ _   _ _   //
  277.         (_)=( X )=( X )=( X )=( X )=( X )=( X )=( X )=( X )=(_)
  278.              \X/   \X/   \X/   \X/   \X/   \X/   \X/   \X/
  279.  
  280. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  281.                             End Of Document
  282.