Re: A82: Memory Mgmt


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

Re: A82: Memory Mgmt



Ash 3.0 always relocates the programs it runs to the same place in mem
(START_ADDR), and programs written for Ash 3.0 will not work unless they
are placed there. So currently there is no place in mem where you can put
your program and be sure it stays there, unless the program only runs when
you are on the homescreen. If you program is very small, or you only need
to start it once in a while it is however possible to start it anyway. The
solution is to use some of the area saved for the stack.

The stack on the TI82 is normally very small, and i have never seen it
getting any where near the amout TI set aside for it. This leaves some of
the stack area unused all the time, and this can be used to implement
small rutines. Is you program is small you cn just place it there. If you
program is too big, but you only run it once in a while, you put a
function there which locates your program and runs it. The only problem
with this is that there is no garantee that the stack wont get too big and
destroy your program. 

If what you are doing is an interrupt controlled program, there is another
problem, and that ist where to place the interrupt table. As far as i know
there is only two places you can use and that is the graph mem and the apd
buffer. The problem is that if the calc apds or the uses graphs something
teh calc will crash. If you decide the use one of these places for
something like that you could also place your program there.

None of these solutions are very good, but it is the best you can do in
Ash 3.0. It is however my plan to make this easier in the shell Jason and
I are releasing. If all goes well it will make things like this (and
programs like game wizard) alot easier, but remeber i am NOT promissing
anything.

It is hard to be more precise than this when i do not know exactly what
you want to do, but if you do need more help mail me some more details and
i will have a look at it.

Dines

BTW As i wrote in the docs for IntTest82 there are some problems with
interrupts on the TI82, which makes interrupt driven programs less useful
on the TI82. I might have foud a way to eliminate that, but untill i get
it tested, just assume the info in IntTest82 to be true.

_______________________________________

Dines Justesen
Email: dines@post1.com or
       c958362@student.dtu.dk
WWW  : http://www.gbar.dtu.dk/~c958362/
_______________________________________

On Mon, 3 Nov 1997, Matt Maurano wrote:

> Is PROGRAM_ADDR (Where the program currently running is copied to, no?)
> directly after ash.82p?
> 
> If so, is there anywhere in memory I can put a file, and always know its
> location? (Short of putting it before ash and creating a new backup,
> etc)
> 
> 


References: