40 Chapter 2: TI-83 Plus Specific Information
TI-83 Plus Developer Guide Third Release May 28, 2002
The details on inputs and outputs for these routines can be found in the System Routine
Documentation.
Example: Recall the contents of variable C, assume it is created and not archived, and
check if it is real.
B_CALL ZeroOP1 ; OP1 = 00000000000
LD A,’C’
LD (OP1+1),A ; OP1 = C var name
;
B_CALL RclVarSym ; OP1/OP2 = value
B_CALL CkOP1Real ; ACC = type,Z=1ifreal
Deleting Variables
• Any variable that has an entry in the Symbol Table can be deleted, even if the data
is archived.
• Preallocated system variables located in system RAM, such as Xmin, cannot be
deleted.
• There are some system variables that also reside in user RAM. They are created in
the same way as user variables and have Symbol Table entries. All of these system
variables are spelled with an illegal first character so that they are excluded from any
menus that show the current variables that exist.
Some of these variables include # and ! which are two program variables used for
home screen entry and the first level of last entry. None of these variables should be
deleted.
• The graph equations should not be deleted without immediately recreating them.
The TI-83 Plus system will crash if these equations are not created.
If an application wants to free the RAM used by a graph equation, it can delete the
equation and immediately recreate the equation with a size of 0 bytes. See the
Create0Equ routine for further information.
• When a variable is deleted, its Symbol Table entry and its data structure are
removed from RAM. If the data was archived, only the Symbol Table entry is
removed from RAM and the archive space made available. Deleting an archived
variable will not free much RAM space for other uses.
There are no holes left in RAM when a variable is deleted. Both the user memory
and Symbol Table are immediately compressed, and all of the freed RAM now
becomes part of the free RAM area.
• There are three routines for deleting variables — DelVar, DelVarArc, and
DelVarNoArc. The difference between them is how an archived variable is handled.
Common inputs:
HL = pointer to the variable’s Symbol Table entry
DE = pointer to the variable’s data structure