Re: A83: thanx..more int info
[Prev][Next][Index][Thread]
Re: A83: thanx..more int info
On Thu, 13 Nov 1997, Andrew Von Dollen wrote:
> At 09:09 PM 11/12/97 -0600, you wrote:
> > -What are wexactly shadow registers? Similar to text and cmd shadow?
>
> Sorta, but not really, they are just replicas of the registers you use
> often, having shadow registers just makes things faster, were there none,
> you would have to push and pop all of the registers in an interrupt routine
> because you never know when an int is going to be executed.
mmhmm...
>
> > -Is it possible to have more ints @ once?
>
> No, unless someone were to write a shell or loader that would allow for
> such things (like Usgard does on the 85)
And how would a shell be able to accomplish that? How did Usgard do it?
(I guess I should ask Jimmy Mardel (who made it))
>
> > -where are the actuall 83 progs in the RAM? I need to find a way to edit
> >them (via asm)
>
> Well, they are scattered throughout the user ram (user ram is everything
> except the few kilobytes that are used for system variables, graph mem,
> etc.) In order to find exactly where a specific program is located, you
> must search through the VAT or use the _chkfindsym call (detailed in the
> documentation at www.ti.com) which does this for you.
Oh, okay, thanx. I never really paid attention to that...
Now, can I alter the info at the data address (that _chkfindsym rets),
thus editing a program? Do the tokens (in tokens.inc) work for that, too?
Ultimately, I'm working on a shell that also allows you (the user) to
edit any program...
>
> > -Also, is there a way to run a prog from an asm prog (without having to
> >drop back to a TI-BASIC caller prog
>
> hmm, this is a tad difficult, the basic idea is: find the address of the
> variable and then call that address.
Okay, well, that's granted it is an asm program. If it is a BASIC
program, you're prolly gonna need to call the BASIC compiler to compile,
and run, the program...
>
> >Also, PUSH and POP, I have a vague idea on what they are, I just need to
> figure
> >out a tad more about them...
>
> PUSH pushes a register pair onto the stack
> POP retrieves the the top two bytes on the stack
Okay, got that...
>
> When a routine is called, the current program counter is pushed onto the
> stack, when a ret is executed, the two bytes on top of the stack are put
> into the program counter.
hmmmm... That's prolly some pretty useful info
>
> For a more in-depth description of the stack and these instructions in
> particular, check out the zshell school at http://www.algonet.se/~mja/
I'll check it out as soom as I get my internet provider back...
>
> -Andrew
>
>
Thanx a lot, Andrew. Your replys have really helped a bunch... Do YOU
need any info that I could possibly give you?
-Dimitri
References: