Re: LF: On-calc assembler


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

Re: LF: On-calc assembler



Yes, all that would work fine if I'm writing a shell program (which really
wouldn't be a bad idea...).  But my hope was to "permanently" change them,
meaning they'd point to a program fixed in memory somewhere and would kick
in no  matter what you're doing on the calc.  Like, if you ran a beta
version of some fargo program from the home screen and ran into an address
error, the new error routines would still be called.
I'd say the only way to go about doing that would be to build the routines
into the fargo core and install them the same time the core is installed
into a backup file.

-Mark-

>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
>
>