[mod.computers.68k] Is this a way to handle the exception problem?

RDROYA01@ULKYVX.BITNET.UUCP (05/16/86)

What I have decided to do about the exception processing problem is create a
handler that intercepts all bdos calls while a specific program is running
in high memory.  That program will actually controll the whole system.  I
intend to do this by resetting the trap #2 vector and testing for D0=0 and
D0=PRGM_LD.  I will have the program save the old vectors and two flags.  If
the RESET flag is TRUE, then it will put the original vectors back and cause
a warm boot.  If the PRGM_LD flag is set (never will be at first), it will
put the program in supervisor state and call the CCP to load the program.
The privilidge error is the only problem with the CCP call now.  If the
resident program intercepts the RESET command, then when the CCP returns, it
will return to the calling program rather than resetting.  It should also be
able to grab exit() status this way.  What are the potential problems here?

                RDROYA01@ULKYVX.BITNET

mknox@NGP.UTEXAS.EDU.UUCP (05/17/86)

Why are you trying to call CCP to load the program.  If that is your
only problem, call BDOS.  You will need to set up a BASE page, but
that should be the only extra effort.

By the way, I do not know if you got my previous reply.  If not, here
is a synopsis:  The manual clearly states that TRAP 0 and 1 should
*NOT* be reset on an exit.  If they are, then it is likely a BIOS
problem.  HOWEVER (!) I tried it on a MacIntosh running version 1.2
and it also reset 0 and 1.  Either it is a widespread problem with
BIOS implementors not reading the manual, or it is in the main 
system.

					mknox@ngp.utexas.edu