TI-85 Link Protocol Guide v1.0 - Screenshots

##

Screenshots

The TI-85's screenshot ability is "silent," which means that the calculator does not need to be put in a special mode. Screenshots can be taken any time the calculator is ready to accept a keypress.

The protocol used for getting a screenshot is shown below. For information on packet formats, click here.

Step | Direction | Packet
--- | --- | ---
1 |  |  |  | SCR
2 |  | ACK
3 |  | DATA - Format described below.
4 |  | ACK

The data packet contains a 1024-byte monochrome bitmap (1 bit per pixel). Each bit has a value of 1 if the corresponding pixel is dark or a value of 0 if the corresponding pixel is light.

The pixel order is left-to-right, then top-to-bottom (See figure below).
Byte 0 defines the first 8 pixels in the left side of the top row of the screen. Bytes 1-15 define the rest of the first row, bytes 16-31 define the second row, etc.

Example:

PC: | `05 6D 00 00` | Screenshot request
TI: | `85 56 00 00` | Acknowledgement of request
| `85 15 00 04` <1024 bytes plus 2 byte checksum> | Screen data
PC: | `05 56 00 00` | Acknowledgement of data

The following figure demonstrates byte ordering of the pixels if the bitmap is in a 1024-element array data[]:

Note that this format is different from the standard Windows bitmap format, which specifies a value of 1 if the pixel is light and bottom-to-top row order.

Alternately, the TI-85 may send the screenshot by executing the PrtScrn command. In that case, this protocol is used:

Step | Direction | Packet
--- | --- | ---
1 |  |  |  | VAR with Type ID=14h
2 |  | ACK
3 |  | CTS
4 |  | ACK
5 |  | DATA (format described above).
6 |  | ACK

The data format is the same as in the above transfer.

Example:

TI: | `85 06 05 00` `00 04 14 00 00 18 00` | Variable Header: Screenshot
PC: | `05 56 00 00` | Acknowledgement of header
| `05 09 00 00` | Clear to send header
TI: | `85 56 00 00` | Acknowledgement of CTS
| `85 15 00 04` <1024 bytes plus 2 byte checksum> | Screen data
PC: | `05 56 00 00` | Acknowledgement of data

Packet Formats | Table of Contents | Manual Transfers

Site maintained by Romain Liévin (roms@lpg.ticalc.org) and Tim Singer (tsinger@gladstone.uoregon.edu)