Re: LF: On-calc assembler


[Prev][Next][Index][Thread]

Re: LF: On-calc assembler



Hmmm wrote:

> Yes, I noticed that today.  I also discovered the extra system Rob Taylor
> talked about in his message.
> So, I'll try those things.
> 
> But, there are few other problem with re-writing the error routines.  One is
> the fact that the routines would have to be in a fixed point in memory so
> the vector can be set correctly.  From what I hear, Fargo programs are never
> fixed anywhere.

Fargo programs are fixed while being run, so if this would be a shell or
other program that doesn't give up system control until after the
program is compiled and tested, you could change the vectors to
addresses in your program, and just make sure to restore them before you
exit the program.

This is what graylib does, it changes the one interrupt to match an
address in the library, to switch the screens, and when grayscale is
turned off, it saftly restores the valuse to their original locations.

> Also, there's the problem on what to do after the error message is
> displayed.  How does one clear the problem and drop back to the OS (or
> whatever)?  For example, if there is an address error, the message would be
> displayed, but you wouldn't want the calc to just resume back to where the
> error was... that wouldn't help things.  You'd want it to terminate the
> program and drop back to the home screen (or fargo shell or whatever).  And
> I'm not sure how to do that...
> 

You could save the registers and stack pointer before you run a program,
and then if an error occurs you can restore them and exit as though the
errored prog never ran, although memory errors may still remain, but at
least you don't have to reset every time an error occurs, just after you
finish debugging, reset to get rid of any "built-up corruption"

> -Mark-

-- 
Christopher Poole
poole.christopher@paradox.net
http://www.paradox.net/homepages/poole
http://mycorner.home.ml.org
http://poole.home.ml.org


References: