fformat.html 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
  2. <HTML>
  3. <HEAD>
  4. <META NAME="GENERATOR" Content="Visual Page 1.0 for Windows">
  5. <META HTTP-EQUIV="Content-Type" CONTENT="text/html;CHARSET=iso-8859-1">
  6. <TITLE>TI-82 Link Protocol Guide - File formats</TITLE>
  7. </HEAD>
  8. <BODY BGCOLOR="#FFFFE8">
  9. <P><B>TI-82 Link Protocol Guide v1.0</B> - File formats</P>
  10. <CENTER>
  11. <H2>
  12. <HR ALIGN="CENTER">
  13. File Formats</H2>
  14. </CENTER>
  15. <P>The TI-82 Graph Link software stores variables in several types of files. Single variables are stored in files
  16. that have an extension that corresponds with their type. Groups of variables are stored in files with the extension
  17. &quot;.82g&quot;. However, all of these file types have a common format.</P>
  18. <P>The different file types and contents that the TI-82 Graph Link software can read and write are shown below.</P>
  19. <P>
  20. <TABLE BORDER="1" CELLSPACING="0" WIDTH="66%">
  21. <TR>
  22. <TH WIDTH="13%" BGCOLOR="#DDDDDD">Extension</TH>
  23. <TH BGCOLOR="#DDDDDD">Description</TH>
  24. </TR>
  25. <TR>
  26. <TD WIDTH="13%">
  27. <P ALIGN="CENTER">.82b
  28. </TD>
  29. <TD>TI-82 system backup</TD>
  30. </TR>
  31. <TR>
  32. <TD WIDTH="13%">
  33. <P ALIGN="CENTER">.82d
  34. </TD>
  35. <TD>TI-82 GDB (function, polar, parametric or sequence)</TD>
  36. </TR>
  37. <TR>
  38. <TD WIDTH="13%">
  39. <P ALIGN="CENTER">.82g
  40. </TD>
  41. <TD>Multiple TI-82 variables of varying types (group)</TD>
  42. </TR>
  43. <TR>
  44. <TD WIDTH="13%">
  45. <P ALIGN="CENTER">.82i
  46. </TD>
  47. <TD>TI-82 picture (image)</TD>
  48. </TR>
  49. <TR>
  50. <TD WIDTH="13%">
  51. <P ALIGN="CENTER">.82l
  52. </TD>
  53. <TD>TI-82 list</TD>
  54. </TR>
  55. <TR>
  56. <TD WIDTH="13%">
  57. <P ALIGN="CENTER">.82m
  58. </TD>
  59. <TD>TI-82 matrix</TD>
  60. </TR>
  61. <TR>
  62. <TD WIDTH="13%">
  63. <P ALIGN="CENTER">.82n
  64. </TD>
  65. <TD>TI-82 real number</TD>
  66. </TR>
  67. <TR>
  68. <TD WIDTH="13%">
  69. <P ALIGN="CENTER">.82p
  70. </TD>
  71. <TD>TI-82 program</TD>
  72. </TR>
  73. <TR>
  74. <TD WIDTH="13%">
  75. <P ALIGN="CENTER">.82t
  76. </TD>
  77. <TD>TI-82 table setup</TD>
  78. </TR>
  79. <TR>
  80. <TD WIDTH="13%">
  81. <P ALIGN="CENTER">.82w
  82. </TD>
  83. <TD>TI-82 window settings (Window or RclWindow)</TD>
  84. </TR>
  85. <TR>
  86. <TD WIDTH="13%">
  87. <P ALIGN="CENTER">.82y
  88. </TD>
  89. <TD>TI-82 Y-Variable (equation)</TD>
  90. </TR>
  91. <TR>
  92. <TD WIDTH="13%">
  93. <P ALIGN="CENTER">.82z
  94. </TD>
  95. <TD>TI-82 zoom (saved window settings)</TD>
  96. </TR>
  97. </TABLE>
  98. <p></P>
  99. <P>
  100. <HR ALIGN="CENTER">
  101. <p></P>
  102. <H3>The TI-82 variable file format</H3>
  103. <P>The TI-82 variable file format has two parts: a header and several variable entries.</P>
  104. <P>The header appears at the beginning of the file and takes the following format:<BR>
  105. <I>Note - All 2-byte integers are stored little-endian Intel-style (least significant byte first).</I></P>
  106. <P>
  107. <TABLE BORDER="1" CELLSPACING="0" WIDTH="92%">
  108. <TR>
  109. <TH WIDTH="8%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Offset</FONT></TH>
  110. <TH WIDTH="11%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Length</FONT></TH>
  111. <TH WIDTH="81%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Description</FONT></TH>
  112. </TR>
  113. <TR>
  114. <TD WIDTH="8%" BGCOLOR="#FFFFFF">0</TD>
  115. <TD WIDTH="11%" BGCOLOR="#FFFFFF">8 bytes</TD>
  116. <TD WIDTH="81%" BGCOLOR="#FFFFFF">8-character signature. The signature is always &quot;<TT>**TI82**</TT>&quot;.</TD>
  117. </TR>
  118. <TR>
  119. <TD WIDTH="8%" BGCOLOR="#FFFFFF">8</TD>
  120. <TD WIDTH="11%" BGCOLOR="#FFFFFF">3 bytes</TD>
  121. <TD WIDTH="81%" BGCOLOR="#FFFFFF">3-byte further signature. These three bytes always contain {1Ah, 0Ah, 00h} = {26, 10, 0}</TD>
  122. </TR>
  123. <TR>
  124. <TD WIDTH="8%" BGCOLOR="#FFFFFF">11 (Bh)</TD>
  125. <TD WIDTH="11%" BGCOLOR="#FFFFFF">42&nbsp;(2Ah)&nbsp;bytes</TD>
  126. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Comment. The comment is either zero-terminated or padded on the right with space characters.</TD>
  127. </TR>
  128. <TR>
  129. <TD WIDTH="8%" BGCOLOR="#FFFFFF">53 (35h)</TD>
  130. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  131. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Length, in bytes, of the data section of the file. This number should be 57 (39h) bytes less than the file size.</TD>
  132. </TR>
  133. <TR>
  134. <TD WIDTH="8%" BGCOLOR="#FFFFFF">55 (37h)</TD>
  135. <TD WIDTH="11%" BGCOLOR="#FFFFFF"><I>n</I> bytes</TD>
  136. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Data section - consists of a number of variable entries (described below).</TD>
  137. </TR>
  138. <TR>
  139. <TD WIDTH="8%" BGCOLOR="#FFFFFF">55&nbsp;(37h)+<I>n</I></TD>
  140. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  141. <TD WIDTH="81%" BGCOLOR="#FFFFFF">File checksum. This is the lower 16 bits of the sum of all bytes in the data section.</TD>
  142. </TR>
  143. </TABLE>
  144. <p></P>
  145. <P>Each variable entry follows this format:</P>
  146. <P>
  147. <TABLE BORDER="1" CELLSPACING="0" WIDTH="92%">
  148. <TR>
  149. <TH WIDTH="8%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Offset</FONT></TH>
  150. <TH WIDTH="11%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Length</FONT></TH>
  151. <TH WIDTH="81%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Description</FONT></TH>
  152. </TR>
  153. <TR>
  154. <TD WIDTH="8%" BGCOLOR="#FFFFFF">0</TD>
  155. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  156. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Always has a value of 11 (Bh).</TD>
  157. </TR>
  158. <TR>
  159. <TD WIDTH="8%" BGCOLOR="#FFFFFF">2</TD>
  160. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  161. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Length, in bytes, of the variable data.</TD>
  162. </TR>
  163. <TR>
  164. <TD WIDTH="8%" BGCOLOR="#FFFFFF">4</TD>
  165. <TD WIDTH="11%" BGCOLOR="#FFFFFF">1 byte</TD>
  166. <TD WIDTH="81%" BGCOLOR="#FFFFFF">variable type ID byte (see <A HREF="vars.html#vartypes">variable type ID's</A>)</TD>
  167. </TR>
  168. <TR>
  169. <TD WIDTH="8%" BGCOLOR="#FFFFFF">5</TD>
  170. <TD WIDTH="11%" BGCOLOR="#FFFFFF">8 bytes</TD>
  171. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Variable name, padded with NULL characters (0h) on the right.</TD>
  172. </TR>
  173. <TR>
  174. <TD WIDTH="8%" BGCOLOR="#FFFFFF">13 (Dh)</TD>
  175. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  176. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Length, in bytes, of the variable data. (This is a copy of the value in offset 2)</TD>
  177. </TR>
  178. <TR>
  179. <TD WIDTH="8%" BGCOLOR="#FFFFFF">15 (Fh)</TD>
  180. <TD WIDTH="11%" BGCOLOR="#FFFFFF"><I>n</I> bytes</TD>
  181. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Variable data. <A HREF="vars.html">Click here</A> for variable data formats.</TD>
  182. </TR>
  183. </TABLE>
  184. <p></P>
  185. <P>
  186. <HR ALIGN="CENTER">
  187. <p></P>
  188. <H3>The TI-82 backup file format</H3>
  189. <P>Most link programs allow a user to download and save system backups with the extension &quot;.82b&quot;.</P>
  190. <P>Here is the format for backup files:</P>
  191. <P>
  192. <TABLE BORDER="1" CELLSPACING="0" WIDTH="92%">
  193. <TR>
  194. <TH WIDTH="15%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Offset</FONT></TH>
  195. <TH WIDTH="11%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Length</FONT></TH>
  196. <TH WIDTH="74%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Description</FONT></TH>
  197. </TR>
  198. <TR>
  199. <TD WIDTH="15%" BGCOLOR="#FFFFFF">0</TD>
  200. <TD WIDTH="11%" BGCOLOR="#FFFFFF">8 bytes</TD>
  201. <TD WIDTH="74%" BGCOLOR="#FFFFFF">8-character signature. The signature is
  202. always &quot;<TT>**TI82**</TT>&quot;.</TD>
  203. </TR>
  204. <TR>
  205. <TD WIDTH="15%" BGCOLOR="#FFFFFF">8</TD>
  206. <TD WIDTH="11%" BGCOLOR="#FFFFFF">3 bytes</TD>
  207. <TD WIDTH="74%" BGCOLOR="#FFFFFF">3-byte further signature. These three bytes
  208. always contain {1Ah, 0Ah, 00h} = {26, 10, 0}</TD>
  209. </TR>
  210. <TR>
  211. <TD WIDTH="15%" BGCOLOR="#FFFFFF">11 (Bh)</TD>
  212. <TD WIDTH="11%" BGCOLOR="#FFFFFF">42&nbsp;(2Ah)&nbsp;bytes</TD>
  213. <TD WIDTH="74%" BGCOLOR="#FFFFFF">Comment. The comment is either zero-terminated
  214. or padded on the right with space characters.</TD>
  215. </TR>
  216. <TR>
  217. <TD WIDTH="15%" BGCOLOR="#FFFFFF">53 (35h)</TD>
  218. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  219. <TD WIDTH="74%" BGCOLOR="#FFFFFF">Length, in bytes, of the backup header and
  220. the data sections. This number should be 17 (11h) bytes more than the sum
  221. of the lengths of the three data sections as reported in the backup header.</TD>
  222. </TR>
  223. <TR>
  224. <TD WIDTH="15%" BGCOLOR="#FFFFFF">55 (37h)</TD>
  225. <TD WIDTH="11%" BGCOLOR="#FFFFFF">11 bytes</TD>
  226. <TD WIDTH="74%" BGCOLOR="#FFFFFF">The backup header (format described below).</TD>
  227. </TR>
  228. <TR>
  229. <TD WIDTH="15%" BGCOLOR="#FFFFFF">66 (42h)</TD>
  230. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  231. <TD WIDTH="74%" BGCOLOR="#FFFFFF">Length, in bytes, of the first data section.</TD>
  232. </TR>
  233. <TR>
  234. <TD WIDTH="15%" BGCOLOR="#FFFFFF">68&nbsp;(44h)</TD>
  235. <TD WIDTH="11%" BGCOLOR="#FFFFFF"><I>x</I> bytes</TD>
  236. <TD WIDTH="74%" BGCOLOR="#FFFFFF">First data section.</TD>
  237. </TR>
  238. <TR>
  239. <TD WIDTH="15%" BGCOLOR="#EEEEEE">68 (44h)+<I>x</I></TD>
  240. <TD WIDTH="11%" BGCOLOR="#EEEEEE">2 bytes</TD>
  241. <TD WIDTH="74%" BGCOLOR="#EEEEEE">Length, in bytes, of the second data section</TD>
  242. </TR>
  243. <TR>
  244. <TD WIDTH="15%" BGCOLOR="#EEEEEE">70 (46h)+<I>x</I></TD>
  245. <TD WIDTH="11%" BGCOLOR="#EEEEEE"><I>y</I> bytes</TD>
  246. <TD WIDTH="74%" BGCOLOR="#EEEEEE">Second data section.</TD>
  247. </TR>
  248. <TR>
  249. <TD WIDTH="15%" BGCOLOR="#FFFFFF">70 (46h)+<I>x</I>+<I>y</I></TD>
  250. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  251. <TD WIDTH="74%" BGCOLOR="#FFFFFF">Length, in bytes, of the third data section</TD>
  252. </TR>
  253. <TR>
  254. <TD WIDTH="15%" BGCOLOR="#FFFFFF">72 (48h)+<I>x</I>+<I>y</I></TD>
  255. <TD WIDTH="11%" BGCOLOR="#FFFFFF"><I>z</I> bytes</TD>
  256. <TD WIDTH="74%" BGCOLOR="#FFFFFF">Third data section</TD>
  257. </TR>
  258. <TR>
  259. <TD WIDTH="15%" BGCOLOR="#FFFFFF">72 (48h)+<I>x</I>+<I>y</I>+<I>z</I></TD>
  260. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  261. <TD WIDTH="74%" BGCOLOR="#FFFFFF">Checksum. This is the lower 16 bits of the
  262. sum of all bytes in the backup header and data sections.</TD>
  263. </TR>
  264. </TABLE>
  265. <p></P>
  266. <P>The backup header has this format:</P>
  267. <P>
  268. <TABLE BORDER="1" CELLSPACING="0" WIDTH="92%">
  269. <TR>
  270. <TH WIDTH="8%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Offset</FONT></TH>
  271. <TH WIDTH="11%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Length</FONT></TH>
  272. <TH WIDTH="81%" BGCOLOR="#008800"><FONT COLOR="#FFFFFF">Description</FONT></TH>
  273. </TR>
  274. <TR>
  275. <TD WIDTH="8%" BGCOLOR="#FFFFFF">0</TD>
  276. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  277. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Offset to data length: Always has a value
  278. of 9.</TD>
  279. </TR>
  280. <TR>
  281. <TD WIDTH="8%" BGCOLOR="#FFFFFF">2</TD>
  282. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  283. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Length, in bytes, of the first data section.</TD>
  284. </TR>
  285. <TR>
  286. <TD WIDTH="8%" BGCOLOR="#FFFFFF">4</TD>
  287. <TD WIDTH="11%" BGCOLOR="#FFFFFF">1&nbsp;byte</TD>
  288. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Type ID: Always has a value of 15 (Fh).</TD>
  289. </TR>
  290. <TR>
  291. <TD WIDTH="8%" BGCOLOR="#FFFFFF">5</TD>
  292. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  293. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Length, in bytes, of the second data section.</TD>
  294. </TR>
  295. <TR>
  296. <TD WIDTH="8%" BGCOLOR="#FFFFFF">7</TD>
  297. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  298. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Length, in bytes, of the third data section.</TD>
  299. </TR>
  300. <TR>
  301. <TD WIDTH="8%" BGCOLOR="#FFFFFF">9</TD>
  302. <TD WIDTH="11%" BGCOLOR="#FFFFFF">2 bytes</TD>
  303. <TD WIDTH="81%" BGCOLOR="#FFFFFF">Memory address of the second data section
  304. ?</TD>
  305. </TR>
  306. </TABLE>
  307. <BR>
  308. <TABLE BORDER="0" CELLSPACING="0" WIDTH="100%">
  309. <TR>
  310. <TD WIDTH="32%">
  311. <P ALIGN="CENTER"><A HREF="vars.html"><IMG SRC="graphics/prevpage.gif" WIDTH="32" HEIGHT="32" ALIGN="BOTTOM" ALT="[previous page]"
  312. BORDER="2"><BR>
  313. Variable Formats</A>
  314. </TD>
  315. <TD WIDTH="34%">
  316. <P ALIGN="CENTER"><A HREF="index.html"><IMG SRC="graphics/home.gif" WIDTH="32" HEIGHT="32" ALIGN="BOTTOM" ALT="[home]"
  317. BORDER="2"><BR>
  318. Table of Contents</A>
  319. </TD>
  320. <TD WIDTH="34%">
  321. <P ALIGN="CENTER"><A HREF="tokens.html"><IMG SRC="graphics/nextpage.gif" WIDTH="32" HEIGHT="32" ALIGN="BOTTOM"
  322. ALT="[next page]" BORDER="2"><BR>
  323. Tokens and Characters</A>
  324. </TD>
  325. </TR>
  326. </TABLE>
  327. <HR ALIGN="CENTER">
  328. <I>Site maintained by Romain Li&eacute;vin (</I><A HREF="mailto:roms@lpg.ticalc.org"><I>roms@lpg.ticalc.org</I></A><I>)
  329. and Tim Singer (</I><A HREF="mailto:tsinger@gladstone.uoregon.edu"><I>tsinger@gladstone.uoregon.edu</I></A><I>)</I>
  330. </BODY>
  331. </HTML>