I'd like to know if the maximum RAM is always 24576, I was told yes by some and no by others.

If it is not always 24576, then how can I get it in ASM Code? Thanks.
Heh, first post since ages.

If you only count the default RAM swapped in (from $8000 to $FFFF), it amounts to 32Kb of memory space. Some of these areas are reserved for OS use, and that is how you get the 24K-and-something that shows up in the MEM menu.

Depending on your hardware version, another couple of pages are available. On some versions of the 84+-line, you can access up to 128Kb. Wikiti has information about those pages. I haven't touched my calc for a long time, so I probably wouldn't even remember the port numbers. Razz Also, the OS technically doesn't "know" about those pages, hence whatever data you store on them will not be available for "normal" calculator use.

Permanently storing data (i.e. anything that requires a longer shelf life than your runtime buffers) in the reserved RAM areas is a bad idea, because they will very probably be overwritten.

So no, there's no good way to use that extra RAM. You're stuck with 24576 bytes.

EDIT: grammar.
"So no, there's no good way to use that extra RAM. You're stuck with 24576 bytes."

I either questioned it wrong, or you got the wrong thing.

What i mean is:

How can I know the max RAM in a calc (no extra pages, the default)?

Is it always 24576?
The easiest way to find out is to clear all memory, and check the amount of free ram. On my TI 84+ Silver Edition, it says 24317.
souvik1997 wrote:
The easiest way to find out is to clear all memory, and check the amount of free ram. On my TI 84+ Silver Edition, it says 24317.


Is there a pointer to the max memory in ASM?
souvik1997 wrote:
The easiest way to find out is to clear all memory, and check the amount of free ram. On my TI 84+ Silver Edition, it says 24317.

Clear all memory is usually "reset all memory" if I remember correctly. Once you do this proceed to delete all variables from your calculator as well as all archived programs and appvars, because each VAT entry takes up space even if the variable or program itself is archived.
I think he's asking if you can look at a place pointed to in memory that says total RAM left that the OS keeps track of. I know there is one, but the location number fails me.
In theory, if you have NO variables on your calculator you'll have free RAM all the way from userMem (0x9D95) to symTable (0xFE66), which is 24786 bytes. However, there are usually a few variables created by the OS such as the program to hold the last entry and the program to hold the current entry buffer. Also possibly the graphing functions are present.

If you want to get the total amount of RAM available for use at any point, take the 16-bit value in (FPS) and subtract the 16-bit value in (OPS). This will be lower when running a program than when on the homescreen.
Thanks you all, I'll just stick with 24576...
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement