"Screenshot" has no documented protocol number (that I've found)
You're right about the 60CSx transfer sequence. When I had a 60CSx, that what's received and I could construct images as expected.
The 64s is different -- it sends "everything" in one transfer (one header record, 65,536 color map records, 1200 image pixel records). However, the stream of data doesn't seem consistent to me. For example, while the 'header' (similar, but not the same as, a BMP image file header), says each pixel will be 16 bits, the image records off the device only provide half what's required for that. When I treat that image data as 8-bit (instead of 16-bit) pixels, I get a distorted image. So far, I've not made an attempt to incorporate the color table, so my 'distorted image' is greyscale, but it's also visibly similar to what was on the screen.
Here's such an image I derived
*** edited to conform with forum posting guidelines ***
Spoiler
The image data off the device is 1200 records of 16 bytes like, for example:
Code: Select all
01 00 00 00 60 01 00 00 f7 be ef 9d 7c 0f 00 00
----------- ----------- -----------------------
Those 1200 records, with 8 image bytes each, make a 240x160 8-bit frame (or, more like what I see, half a 240x160 16-bit frame).
As I was finishing this and checking things, I noticed, for the first time, these image offsets (the second four bytes) are too large and not equally spaced .. that's a clue, but what?!