TI-92 Link Protocol Guide - System Backup Transfers
A System Backup is one large transmission containing all user-modifiable data in the calculator. The file format that the TI-92 Graph Link software uses can be found in the file formats section of this documentation.
System backups must be transferred silently. Silent transfers can only be done between a computer and a calculator, and require that the computer make the request or request-to-send.
The protocol for silently requesting and receiving a backup is described below. For information on packet formats, click here.
Step | Direction | Packet | ||
---|---|---|---|---|
1 |
|
|
|
REQ with request-style backup header. Name is "main\backup". |
2 |
|
ACK | ||
3 |
|
VAR with data-style backup header. | ||
4 |
|
ACK | ||
5 |
|
CTS | ||
6 |
|
ACK | ||
7 |
|
DATA (a 1-kilobyte backup block, with four extra bytes at the beginning) | ||
8 |
|
ACK | ||
|
(Repeat steps 3-8 for as many kilobytes as there are in the backup) | |||
9 |
|
EOT | ||
10 |
|
ACK |
Example:
PC: | 09 A2 11 00 00 00 00 00 1D 0B 6D 61 69 6E 5C 62 61 63 6B 75 70 9F 04 | Request: Backup "main\backup" |
TI: | 89 56 00 00 | Acknowledgement of request |
89 06 0A 00 00 04 00 00 1D 04 31 2E 31 31 E6 00 | Variable header: Backup block (rom version "1.11") | |
PC: | 09 56 00 00 | Acknowledgement of header |
09 09 00 00 | Clear to Send | |
TI: | 89 56 00 00 | Acknowledgement of CTS |
89 15 04 04 <404h (1028) bytes of data plus checksum> | First 1-kilobyte block of data (plus four bytes at the beginning) | |
PC: | 09 56 00 00 | Acknowledgement of data |
TI: | 89 06 0A 00 00 04 00 00 1D 04 31 2E 31 31 E6 00 | Variable header: Backup block (rom version "1.11") |
PC: | 09 56 00 00 | Acknowledgement of header |
09 09 00 00 | Clear to Send | |
TI: | 89 56 00 00 | Acknowledgement of CTS |
89 15 04 04 <404h (1028) bytes of data plus checksum> | Second 1-kilobyte block of data (plus four bytes at the beginning) | |
PC: | 09 56 00 00 | Acknowledgement of data |
. . . |
. . . |
. . . |
TI: | 89 06 0A 00 08 02 00 00 1D 04 31 2E 31 31 EC 00 | Variable header: Backup block (rom version "1.11") |
PC: | 09 56 00 00 | Acknowledgement of header |
09 09 00 00 | Clear to Send | |
TI: | 89 56 00 00 | Acknowledgement of CTS |
89 15 0C 02 <20Ch (524) bytes of data plus checksum> | Final block of data (plus four bytes at the beginning) | |
PC: | 09 56 00 00 | Acknowledgement of data |
TI: | 89 92 00 00 | End of transmission - no more blocks |
PC: | 09 56 00 00 | Acknowledgement of EOT |
The protocol for silently sending a backup is shown below:
Step | Direction | Packet | ||
---|---|---|---|---|
1 |
|
|
|
VAR with send-style backup header. |
2 |
|
ACK | ||
3 |
|
VAR with data-style backup header. | ||
4 |
|
ACK | ||
5 |
|
CTS | ||
6 |
|
ACK | ||
7 |
|
DATA (a 1-kilobyte backup block, without the extra four bytes at the beginning) | ||
8 |
|
ACK | ||
(Repeat steps 3-8 for as many kilobytes as there are in the backup) | ||||
9 |
|
EOT |
Example (PC sending backup to TI):
PC: | 09 06 0A 00 08 9A 00 00 1D 04 31 2E 31 31 84 01 | Variable header: Backup (rom version "1.11") |
TI: | 89 56 00 00 | Acknowledgement of header |
PC: | 09 06 0A 00 04 00 00 00 1D 04 31 2E 31 31 E6 00 | Variable header: Backup block (rom version "1.11") |
TI: | 89 56 00 00 | Acknowledgement of header |
89 09 00 00 | Clear To Send | |
PC: | 09 56 00 00 | Acknowledgement of CTS |
09 15 00 04 <400h (1024) bytes of data plus checksum> | First 1-kilobyte block of data | |
TI: | 89 56 00 00 | Acknowledgement of data |
PC: | 09 06 0A 00 04 00 00 00 1D 04 31 2E 31 31 E6 00 | Variable header: Backup block (rom version "1.11") |
TI: | 89 56 00 00 | Acknowledgement of header |
89 09 00 00 | Clear To Send | |
PC: | 09 56 00 00 | Acknowledgement of CTS |
09 15 00 04 <400h (1024) bytes of data plus checksum> | Second 1-kilobyte block of data | |
TI: | 89 56 00 00 | Acknowledgement of data |
. . . |
. . . |
. . . |
PC: | 09 06 0A 00 08 02 00 00 1D 04 31 2E 31 31 EC 00 | Variable header: Backup block (rom version "1.11") |
TI: | 89 56 00 00 | Acknowledgement of header |
89 09 00 00 | Clear To Send | |
PC: | 09 56 00 00 | Acknowledgement of CTS |
09 15 08 02 <208h (520) bytes of data plus checksum> | Final block of data | |
TI: | 89 56 00 00 | Acknowledgement of data |
PC: | 09 92 00 00 | End of transmission |