A86: Re: Porting Question
[Prev][Next][Index][Thread]
A86: Re: Porting Question
Programs are copied to _asm_exec_ram ($d748) when they are executed. You
have from there until $ffff for whatever you want. Just remember that the
stack starts at $fc00 (down), as does video memory.
All of ram page 1 is free. When your program starts, that page is swapped
into $8000. That gives you 16k to work with. It is best to avoid the two
edges, say start at $8100, as it might screw up some shells, but I've used
from $8000 all the way to $bfff and not had problems.
The easiest way to overcome this is to compile your program as a string,
with the .org as say $8100, and create a loader program that copies the
string to ram page 1 and jumps to it.
> I have some questions regarding the memory of the TI-86. I have never
> programmed for the 86, but I'm in the process of porting a program of mine
> (which I made for the 82) to the 86.
> First and foremost, why is the start address for assembly programs so
high?
> Is all the memory before it used by the system? This is the cause of all
my
> problems...My program is >12K and not only would it overwrite the stack
and
> VAT, but the addresses overflow and so it will not even compile correctly.
> Second, how can I overcome this? I'm sure a lot of you have had this
problem.
References: