This table describes how the RAM is organized.
|appData to userMem-1||System RAM: Used by the OS to store various pointers, settings, buffers, etc.|
|userMem to (tempMem)-1||User Memory: This is where all variables are stored.|
|(tempMem) to (FPBase)-1||Temp Memory: This is where the OS stores temporary variables.|
|(FPBase) to (FPS)-1||Floating Point Stack: A LIFO stack for floating point number (or variable names).|
|(FPS) to (OPS)||Free RAM.|
|(OPS)+1 to (OPBase)||Operator Stack: A LIFO stack used to parse expressions and to store return information when a TI-Basic program is called from another TI-Basic program. TI won't tell anything about this.|
|(OPBase)+1 to (pTemp)||Variable Allocation Table (VAT) for temporary variables.|
|(pTemp)+1 to (progPtr)||Variable Allocation Table (VAT) for programs,appvars,groups and lists with variable length names.|
|(progPtr)+1 to symTable||Variable Allocation Table (VAT) for all variables with a fixed name: reals, strings, ans, functions, matrices, etc.|
|symTable+1 to $FFFE||Hardware Stack|
the_mad_joob found that $FFFF is unused by the system. It is an extra scrap byte.