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: