Briefly looking at your code, and not getting fully involved,
there are a few pointers I wish to pass along.
1) Don't mess with user settings! Crosshair coloring and pickbox size
should be left alone; among other things (including OSNAP). It becomes
annoying to the user up to the point where the utility will be ignored
all together in the future. Bling only impedes workflow.
2) Gather user input before making system changes.
3) Test user input before going into the "main program".
You have an entsel that will not allow the user to exit by
right-click or [Enter]. If so, the program continues on sans
the entsel...
a) Gather user input (including DCL).
b) Test user input.
c) Set environment.
d) Execute utility. Note: No additional user input allowed here; not even "pause".
e) Reset environment.
f) Program ends - No error handler required.
Wrap the above with vla- undo markers.
By following the above structure, no error handler is required.
98% of my 180+ library does not have nor does it require any
error handlers.
???
Scot-65
A gift of extraordinary Common Sense does not require an Acronym Suffix to be added to my given name.