------------------------------- | TI92'S COMMON FILES FORMATS | ------------------------------- Release 1.0 02/10/1997 by Vincent CARON Vincent.Caron@ecl1999.ec-lyon.fr PLEASE NOTE : ----------- - All numbers are in HEXADECIMAL format. - All strings are in C format. They are arrays [1..maxsize] of char, with an ending zero if the actual size of the string is less than maxsize. In this case, any char after a #0 has no meaning and is not obviously equal to #0. It seems that the TI92 pads strings with #0 all the time. - These formats refer to a format version number. They come from the Win'Link v1.4 (08/12/96) software of TI, and are still up to date on the 01/25/97. .92P v1.0 --------- +00 8 "**TI92**" +08 1 format version (maj) +09 1 format version (min) +0A 8 directory name string +12 28 comment string +3A 2 number of entries (LSB first) +3C 4 pointer to first entry (LSB first) +40 8 variable name string +48 1 variable type +49 3 0 0 0 +4C 4 file size (LSB first) +50 2 A5 5A (header end) +52 2 0 0 +54 4 n = variable data size (MSB first) = TI Var-link's size - 2 +58 n variable data +58+n 2 variable data checksum (+52 to +57+n inclusive) Remarks : - file size = variable data size + 5A - pointer to first entry = 52 - number of entries = 1 (*.92? files are ALL *.92G files (!), except *.92B) .92G v1.0 --------- +00 8 "**TI92**" +08 1 format version (maj) +09 1 format version (min) +0A 8 0 0 0 0 0 0 0 0 (unused) +12 28 comment string +3A 2 n = number of entries (LSB first) +3C n entries (i=0..n-1) : +3C+10*i 4 P(i) = pointer to entry data (LSB first) +40+10*i 8 entry name string +48+10*i 1 type +49+10*i 3 ? ? ? +3C+10*n 4 file size (LSB first) +40+10*n 2 A5 5A (header end) +P(0) n entries (i=0..n-1) : +P(i) 2 0 0 +P(i)+2 4 n = variable data size (MSB first) = TI Var-link's size - 2 +P(i)+6 n variable data +P(i)+6+n 2 variable data checksum (+P(i) to +P(i)+5+n inclusive) Remarks : - If the entry is a directory (type 1F), P(i) points to the first variable in this directory .92B v1.0 --------- +00 8 "**TI92**" +08 1 format version (maj) +09 1 format version (min) +0A 8 0 0 0 0 0 0 0 0 (unused) +12 28 comment string +3A 2 number of entries (LSB first) +3C 4 pointer to first entry (LSB first) +40 8 ROM version string ("x.x") +48 1 type (1D) +49 3 0 0 0 +4C 4 file size (LSB first) +50 2 header end (A5 5A) +52 n backup data (n = file_size - header_size - 2) +52+n 2 backup data checksum (+52 to +51+n inclusive) Remarks : - number of entries = 1 - pointer to first entry = 52 - header size = 52 (header end included)