[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
- Error Handling -
------------------------------------------------------------------------
PROCLIP2 currently contains three functions which intercept low level
(BIOS) interrupt vectors to perform their functions. They are:
* CLOCK
Intercepts INT 08H, which is the timer interrupt. This
interrupt was chosen over the more typical INT 1CH in order to
make it more usable under some TSR's which never relinquish
INT 1CH. The CLOCK routine calculates the time at every timer
tick (18.2 times per second).
* PRTSC
Intercepts INT 05H, which is the print screen interrupt.
PRTSC uses this interrupt vector to replace the standard BIOS
print screen with the translation facilities of PROCLIP2.
* UNRESET
Intercepts INT 09H, which is the basic keyboard interrupt.
UNRESET requires access at this level in order to prevent the
CTRL ALT DEL sequence from resetting the computer.
With these three routines, and more to be included in subsequent
releases of PROCLIP2, it became evident that some type of error handling
was necessary. Clipper Summer '87 now contains an extensive runtime
error handling function to intercept most errors and allow your
application to determine the best course of action. While each of the
PROCLIP2 functions contains an "off" command, a given application could
not be expected to intercept every possible error condition. In light
of this, PROCLIP2 now contains it's own built-in critical error handling
system. The error handling system in PROCLIP2 is designed specifically
for these interrupt driven routines, nothing more. When a critical
error is declared by the operating system (as in drive failure), the
PROCLIP2 critical error routine will automatically "unhook" all
interrupt driven routines. The interrupt vectors in BIOS and DOS will
be restored to their original state and the PROCLIP2 interrupt driven
functions will cease their operation immediately. This feature is
unique to PROCLIP2 in that no additional programming is necessary.
There is no need for you to remember which functions are currently
active, PROCLIP2 maintains it's own internal table and uses it to
process the error handling. As an additional feature, you can invoke
the PROCLIP2 error recovery system by yourself. Application error
trapping is great, but sometimes it can determine the best course of
action is a rapid termination of the program.
BAILOUT
-------
The BAILOUT function should only be used when a runtime error has
occurred which the application program determines is unrecoverable.
Invoking the BAILOUT function effectively terminates all PROCLIP2
interrupt driven functions.
Format:
bailout()
Parameters:
None.
Example:
1. The ERRORSYS.PRG has determined that a runtime error is
unrecoverable. Before quitting the program any interrupt
driven PROCLIP2 functions need to be disabled.
.
.
.
bailout()
.
.
quit
Returns:
Nothing.
.
Online resources provided by: http://www.ClipX.Net --- NG 2 HTML conversion by Dave Pearson