home *** CD-ROM | disk | FTP | other *** search
-
- Cancel System Requests 5.0 (19940303)
-
- alias CSR
-
- by Stephen D. Childers
-
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Program Description:
-
- 1) It is normally used to auto-select the "Cancel" gadget (the
- rightmost gadget) of a System Request, but can be used to
- auto-select the leftmost gadget.
-
- If System Requests are pending before you run CSR then running
- CSR in the disable mode will retro-cancel ALL System Requests.
-
- 2) It can run from CLI or Workbench.
-
- 3) Program can be made resident, but the only benefit of making it
- resident is to bypass loading time when program is invoked.
-
- 4) It keeps an internal count of how many System Requests were
- auto-selected.
-
- The count can be displayed when the disable mode is in effect.
- Use CLI option -c to display count. The count will also be
- displayed when CSR is in window mode.
-
- Count will be zeroed upon enable mode.
-
- 5) A Window mode option can be used from CLI or Workbench.
-
- Window mode is invoked from CLI by using option w.
-
- ie > CSR w
- or > CSR wd ; other options can be included
- or > CSR we
-
- Also, when accessing CSR from CLI using the window mode option the
- program will completely detach itself from the CLI and run as a
- background process.
-
- If the background process should fail then it will attempt to notify
- you of that fact with a System Request or a message in front of the
- Workbench Screen title bar.
-
- Window mode is invoked from Workbench by setting the icon TOOL TYPE
- to the following:
-
- "ICON MODE=window"
-
- 6) Process will increase its own priority by 7.
-
- 7) The window mode will contain the status of the CSR process and will
- have the following lines:
-
- The first line will indicate if System Requests are "DISABLED" or
- "enabled".
-
- The second line will display the count of System Requests that
- have been automatically handled. Count will update automatically
- every time a System Request has been handled.
-
- A third line is for various messages.
-
- The fourth line contains the program control gadgets, which are:
-
- "Enable" - Clicking this gadget will enable System Requests.
- Internal count will be erased.
-
- "DISABLE" - Clicking this gadget will disable System Requests.
-
- "Auto Select Toggle" - Click this to have negative or positive
- gadget to be automatically selected.
-
- Clicking the window's close gadget will cause window to close,
- and it will leave intact whichever mode was previously chosen
- before (ie "DISABLE" or "Enable" ).
-
- 8) CSR can be used with the "Announce System Requests" (ASR) program.
- ASR will notify you (audibly) as System Requests are handled
- automatically.
-
- 9) Option -p is for auto-selecting positive gadget.
- Selection of the negative gadget is the internal default.
-
- >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
- >>> CARELESS use of this option can ERASE data files !!! <<<
- >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
-
- Normally the CSR program is used to auto-select the negative
- response gadget, which simulates a user selecting the rightmost
- gadget of a System Request, and usually the words that are used
- within the rightmost gadget are "Cancel", "Quit", "No", "False",
- "Bad", "Exit", "Forget it!", etc.
-
- But under certain conditions it may be desirable to auto-select
- the positive response gadget, which simulates a user selecting the
- leftmost gadget of a System Request, and the words that are usually
- used within the leftmost gadget are "Continue", "Yes", "True",
- "Retry" (!!) , "ok to discard" (!!!!), etc.
-
- Certain programs requesting a "Retry" can loop for ever using this
- option. If a program begins looping then you must change the
- auto-select mode to the negative gadget, this should cause looping
- to cease.
-
- Therefore, do NOT USE this option UNLESS you have a very good
- understanding of the programs which will be running while this
- option is active. So, with careful use and having an understanding
- of the programs involved, this option can be used to switch between
- two posible selections when used within script files.
-
- The CSR program will indicate which gadget will be automatically
- selected by displaying one of the following lines:
-
- "System Requests DISABLED (negative select)" <--- the default
- "System Requests DISABLED (POSITIVE SELECT)"
-
- To select positive gadget from CLI mode type the following:
-
- ie > CSR dp ; disable using positive select gadget
-
- and > CSR d ; switch to negative gadget
- and > CSR dp ; switch back to positive gadget
- and > CSR w ; open window display
-
- To select the positive/negative gadget when the Workbench TOOL TYPE
- is set to "ICON MODE=toggle" then set the "AUTO SELECT" TOOL TYPE
- to one of the following:
-
- "AUTO SELECT=negative" or "AUTO SELECT=positive"
-
- The positive/negative gadget can also be selected from window mode
- (option w) by using the " Auto Select Toggle " gadget.
-
- 10) The Workbench icon can be made to act as an disable/enable toggle
- by setting the icon TOOL TYPE to the following mode:
-
- "ICON MODE=toggle"
-
- This means:
- If System Requests are disabled when program is invoked from
- Workbench then System Requests will be enabled, and if System
- Requests are enabled when program is invoked from Workbench then
- System Requests will be disabled.
-
- NOTE: CSR message reports will be written over the Workbench title
- bar when icon is set to act as a toggle, and each message will
- display for about 4 seconds and then go away.
-
- 11) Program (when run from CLI) will interact with the 'c:Why' command
- after program failures; this command may provide a more detailed
- explanation of why the program failed.
-
- The 'Why' command should be used immediately after a program
- failure to extract the last program's result code, because
- that result code is changed upon the execution of the next CLI
- command.
-
- 12) Certain error reports will contain the name of the argument, file,
- device, (etc) that is associated with failure when it occurs.
-
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Purpose:
-
- One reason for needing to automatically cancel a System Request is
- to allow a computer BBS (Bulletin Board System) process to continue
- operating without waiting for the SYSOP to respond to System Requests.
-
- I once operated a BBS without disabling the System Requests and this
- is what happened:
-
- A caller was downloading a file when suddenly the hard drive developed
- a Read/Write error. This event caused the Operating System to place
- the BBS process in the WAIT mode while it placed a System Request on
- the screen. The caller disconnected. Meanwhile, the system continued
- to WAIT patiently for SEVERAL HOURS befor the SYSOP returned to choose
- the "Retry" or "Cancel" gadget, thereby allowing the BBS process to
- continue running again.
-
- If the System Request function had been disabled then the BBS program
- would have continued to run; the caller would have lost the download
- BUT the caller would have been able to attempt another download of the
- same file, or a different file, or go to the message base, or do a
- normal BBS log out.
-
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- CLI Usage:
-
- > CSR [!|?|options]
-
- ! = show author info
- options c = display count of cancels
- '' d = DISABLE System Requests
- '' e = enable System Requests
- '' p = auto-select POSITIVE gadget (negative is default)
- '' q = quiet; do not print CLI messages
- '' w = window interface display
-
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- Version History:
-
- The following information briefly describes changes or improvements
- made to each version, and they will be described in descending order;
- meaning latest version information begins first:
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Version 5.0 (19940303) -
- 1) Changed version numbering format. Program can now be used with the
- "Version" command. Date within parenthesis is shown in a somewhat
- international format as (yyyymmdd).
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Version 19930809 -
- 1) This new version will work with Workbench 2.0x versions.
- Previous CSR versions will not operate as expected when used
- with Workbench 2.0x or higher.
- 2) Removed a programming error involving the window option. Program
- would print the error message "Unable to comply..." when CSR was
- opened, disabled and closed from Workbench, and then accessed
- from CLI.
- 3) Removed another error that only showed up when some one would
- continuously click the mouse button over the CSR icon, thereby
- spawning several CSR processes within a few moments of time,
- thus causing a system crash.
- 4) CSR will no longer display text of last canceled request.
- 5) System Requests that are pending will be retro-canceled upon
- running CSR in the disable mode.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Version 19920706 -
- 1) CSR can be used with the "Announce System Requests" (ASR) program.
- The CSR program must be run first before running the ASR program.
- ie > CSR -dw ; links CSR code in first
- > ASR -ig ; links ASR code after CSR
- 2) The Workbench icon can be made to act as an disable/enable toggle.
- 3) Window mode option added, can be used from CLI or Workbench.
- 4) Process will increase its own priority by 7 when in window mode.
- 5) Program can be made resident, but the only benefit of making it
- resident is to bypass loading time when program is invoked.
- 6) This version of CSR will allow only one installation of its code.
- Previous CSR versions would allow users to install the CSR code a
- multiple of times depending upon the use of other programs.
- In example, performing the following steps while using CSR
- (version 19910828) and ASR (version 19910902) would install the
- CSR code each time program was invoked:
- ie > CSR i ; 1st copy of CSR code installed in memory
- > run ASR -ig ; 1st copy of ASR code installed in memory
- > CSR i ; 2nd copy of CSR code installed in memory
- > run ASR -ig ; 2nd copy of ASR code installed in memory
- > CSR i ; 3rd copy of CSR code installed in memory
- > run ASR -ig ; 3rd copy of ASR code installed in memory
- This can no longer happen with new versions of CSR or ASR.
- 7) Previous versions contained a minor bug when they attempted to
- detect different versions, therefore, this version will not detect
- previous versions. Previous versions should not be used.
- 8) Added option for auto-selecting negative or positive gadget.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Version 19910828 -
- 1) The cancelation count will be displayed automatically in CLI or
- Workbench during remove mode, but only if CSR was installed.
- 2) Improved error reporting.
- 3) Program (when run from CLI) will now interact with the 'c:Why'
- command after program failures.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- Version 19910714 - The first version.
-
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- _ /X\ /X\ /X\ /X\ /X\ /X\ /X\ /X\ _
- ( )=(_X_)=(_X_)=(_X_)=(_X_)=(_X_)=(_X_)=(_X_)=(_X_)=( )
- // \\
- ( ) 8 I am the Lord: that is my name: ( )
- // and my glory will I not give to another, \\
- ( ) neither my praise to graven images. ( )
- \\ //
- ( ) King James Holy Bible - Isaiah 42:8 ( )
- \\ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ //
- (_)=( X )=( X )=( X )=( X )=( X )=( X )=( X )=( X )=(_)
- \X/ \X/ \X/ \X/ \X/ \X/ \X/ \X/
-
- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- End Of Document
-