Re:
> That's the problem. It appears that even though PASESC.PUB.SYS still contains
> the line:
>
> PasErr_620 = 40632512; PasErr_BoundsViolation = 40632512;
>
> bounds violations are not getting handed to XLIBTRAP. The only way to catch
> them is a Try/Recover. Looks like I've got some recoding before me.
You can trap them via XCODETRAP:
var
old_plabel : integer;
Procedure xcodetrap; intrinsic;
...
procedure my_codetrap_handler;
begin
spout ('I got a code trap, oh no!');
debug;
end;
...
xcodetrap (baddress (my_codetrap_handler), old_plabel);
...
Note: I don't recall what parameters are passed to the handler, nor if there's
a simple ability to have the handler say "keep on running" (or "don't keep on
running").
Between XSYSTRAP, XLIBTRAP, and XCODETRAP, you should be able to handle
almost anything!
Stan Sieler [log in to unmask]
www.allegro.com/sieler/wanted/index.html www.allegro.com/sieler