11# ` .8ca2 ` background images
22
3- Sample files: ` Image1.8ca2 ` through ` Image7.8ca2 ` .
3+ Sample files:
4+
5+ - ` Image1.8ca2 ` through ` Image7.8ca2 `
6+ - ` testData/evo/img_compare/background.8ca2 `
7+ - ` testData/evo/img_compare/background_ticonnectevo.8ca2 `
48
59Metadata:
610
@@ -31,10 +35,25 @@ size = 33601
3135data = byte string, length 33601
3236```
3337
38+ We have a hard-coded CBOR prefix of 70 bytes long before the RGB565 pixel data:
39+
40+ ``` text
41+ BF top-level map(*)
42+ "metaData": BF
43+ "type": 5
44+ "version": 1
45+ "flags": 1
46+ "name": 44 B0 E8 00 00 Image1 token, patched per slot
47+ FF
48+ "version": 1
49+ "size": 0x8341 33601
50+ "data": 59 83 41 0B ... byte string, first byte marker
51+ ```
52+
3453The image data byte string is:
3554
3655``` text
37- data[0] image-format marker; 0x16 in the provided samples
56+ data[0] image-format marker
3857data[1..] 33600 bytes of RGB565 pixel data
3958```
4059
@@ -48,7 +67,9 @@ format = RGB565, little-endian words
4867```
4968
5069The converter draws the input image onto a 160 by 105 white canvas,
51- converts RGBA8888 to RGB565, then writes rows bottom-to-top:
70+ preserving aspect ratio and centering the result. It disables canvas
71+ image smoothing, converts RGBA8888 to RGB565, then writes rows
72+ bottom-to-top:
5273
5374``` text
5475stored row 0 = source/display row 104
@@ -68,4 +89,10 @@ let g6 = (word >> 5) & 0x3f;
6889let b5 = word & 0x1f ;
6990```
7091
71- It seems ` 0x0b ` is the first data byte made by the converter but all provided calculator files use ` 0x16 ` ?
92+ Observed data markers:
93+
94+ ``` text
95+ 0x0B TI Connect Evo image import output
96+ 0x16 calculator/exported samples and img2calc-generated output
97+ ```
98+
0 commit comments