Every var file has two parts: a header and a number of entries, where an entry contains the data for a single variable. Usually, var files contain just one entry; in these cases, there's not much distinction between a var and an entry for the purposes of messing with its data.
TIHeader
Section |
Subsection |
Section Offset |
Length |
Type |
Description |
Notes |
Header |
Magic |
0 |
8 |
String |
The file magic for the var |
- Used to identify if the file is intended for the TI-82 (
**TI82** ), TI-83 (**TI83** ), or TI-83+ and onward (**TI83F* )
|
Extra |
8 |
2 |
Bytes |
Extra export bytes for the var |
- Exact meaning and interpretation of these bytes is not yet determined
|
Product ID |
10 |
1 |
Bytes |
The product ID for the var |
- Used to identify the model the var was created on, though has no actual functional ramifications
- Does not constitute a 1-to-1 mapping to distinct models
|
Comment |
11 |
42 |
String |
The comment attached to the var |
|
Section |
Subsection |
Section Offset |
Length |
Type |
Description |
Notes |
Meta Length |
Meta Length |
0 |
2 |
Integer |
The length of the meta section of the entry |
- Indicates if the entry is suitable for a flash chip (13) or not (11)
- If equal to 13, the entry contains the starred meta subsections
- If equal to 11, the entry lacks the starred meta subsections
|
Meta |
Data Length |
0 |
2 |
Integer |
The length of the data section of the entry |
|
Type ID |
2 |
1 |
Bytes |
The type ID of the entry |
- Used the interpret the contents of the data section of the entry
|
Name |
3 |
8 |
Varies |
The name of the entry |
- Interpretation as text depends on the entry type; see entry pages for details
|
Version* |
11 |
1 |
Integer |
The version number of the entry |
- Only known use is for programs and other tokenized types
|
Archived* |
12 |
1 |
Boolean |
Whether the entry is archived |
|
Data Length |
Data Length |
0 |
2 |
Integer |
The length of the data section of the entry |
- Repeat of the value found in the meta section
|
Data |
... |
... |
... |
... |
The data section of the entry |
- See entry pages for subsections
|
Section |
Subsection |
Section Offset |
Length |
Type |
Description |
Notes |
Header |
Header |
0 |
53 |
TIHeader |
The var's header |
|
Entry Length |
53 |
2 |
Integer |
The total length of all entries in the var |
- Should be 57 less than the total var size
|
Entries |
Entry 1 |
0 |
... |
TIEntry |
The first entry in the var |
|
... |
... |
... |
TIEntry |
Subsequent entries in the var |
- Most vars contain only one entry
|
Checksum |
Checksum |
0 |
2 |
Bytes |
The checksum for the var |
- Equal to the lower 2 bytes of the sum of all bytes in the entries
|