Chapter 2: TI-83 Plus Specific Information 37
TI-83 Plus Developer Guide Third Release May 28, 2002
Some system routines will fail and may cause a lock-up condition if bad data is input
to them.
For more information see the Variable Data Structure section earlier in this chapter.
• If there is not enough free memory available to create a variable, a system memory
error is generated, and the system’s error context will take over execution.
This can be avoided in two ways.
– Use the routine MemChk to see if there is enough free memory available before
attempting to create the variable.
– Use an error exception handler to trap the memory error (if one is generated).
To use option one, the size of the Symbol Table entry and the data structure must
be computed by the application. Therefore, the easiest is option two.
See the Error Handlers section.
• When a variable is created, its data structure is not initialized. Only the two-byte
size field, if one is part of the structure, is initialized to the size the variable was
created at. For example, after creating a complex variable, the entire 18 bytes of the
data structure contain random values.
After creating a list with 23 elements, the first two bytes of the data structure are set
to the number of elements, 17h 00h, the number of elements in hex, with the LSB
followed by the MSB.
If created data structures are not initialized by applications before returning to
normal system operation, the potential for a lock-up condition is very high.
• Routines for creating variables:
Create0Equ CreateEqu CreatePair CreateStrng
CreateRList CreateCList CreateRMat
CreateReal CreateCplx CreatePict
CreateAppVar CreateProg CreateProtProg
– Inputs:
OP1 = variable name to create.
HL = Number of bytes, number of elements or a dimension for some.
See the System Routine Documentation for exact inputs for each routine.
– Outputs:
Possible memory error, see above.
OP4 = variable name created with its sign byte set to the correct data type
OP1 = random
DE = pointer to data structure
HL = pointer to Symbol Table entry