[gnome-color-manager: 50/80] huey: by offsetting the data printing by 2 bytes we see another non-aligned matrix



commit 3ed8342e92a04b041a4fe586e0eb9eb44d554142
Author: Richard Hughes <richard hughsie com>
Date:   Sat Jul 17 23:12:27 2010 +0100

    huey: by offsetting the data printing by 2 bytes we see another non-aligned matrix
    
    It took two days to find one, and now two arrive at once...

 docs/huey/register-dump.txt |  795 ++++++++++++++++++++++++++-----------------
 src/gcm-huey-example.c      |   35 ++-
 2 files changed, 513 insertions(+), 317 deletions(-)
---
diff --git a/docs/huey/register-dump.txt b/docs/huey/register-dump.txt
index df653c5..043e05d 100644
--- a/docs/huey/register-dump.txt
+++ b/docs/huey/register-dump.txt
@@ -1,197 +1,197 @@
-0x00	? ? ? ? 
-0x04	> ? ? ? 
-0x08	? ? u ? 
-0x0c	= ? ? ? 
-0x10	? ? ? ? 
-0x14	= ? ? ? 
-0x18	; V ? ? 
-0x1c	? s ? ? 
-0x20	: ? ? ? 
-0x24	> ? ? ? 
-0x28	? ? ? ? 
-0x2c	? ? ? ? 
-0x30	? ? J [ 
-0x34	? 7 > ? 
-0x38	? ? ?   
-0x3c	? ? = ? 
-0x40	v ? 9 ? 
-0x44	? , = ? 
-0x48	? ? ; D 
-0x4c	h ? ? u 
-0x50	? _ ; ? 
-0x54	? ? > u 
-0x58	, ? J [ 
-0x5c	? Z ? ? 
-0x60	? ? ? ? 
-0x64	? ? ? < 
-0x68	e ` A < 
-0x6c	e ` A < 
-0x70	? ? ? ? 
-0x74	? q   ? 
+0x00	? ? ? ?
+0x04	> ? ? ?
+0x08	? ? u ?
+0x0c	= ? ? ?
+0x10	? ? ? ?
+0x14	= ? ? ?
+0x18	; V ? ?
+0x1c	? s ? ?
+0x20	: ? ? ?
+0x24	> ? ? ?
+0x28	? ? ? ?
+0x2c	? ? ? ?
+0x30	? ? J [
+0x34	? 7 > ?
+0x38	? ? ?
+0x3c	? ? = ?
+0x40	v ? 9 ?
+0x44	? , = ?
+0x48	? ? ; D
+0x4c	h ? ? u
+0x50	? _ ; ?
+0x54	? ? > u
+0x58	, ? J [
+0x5c	? Z ? ?
+0x60	? ? ? ?
+0x64	? ? ? <
+0x68	e ` A <
+0x6c	e ` A <
+0x70	? ? ? ?
+0x74	? q   ?
 0x78	? ? G r <------ This is the start of the unlock string
 0x7c	M b ? ? <--/
-0x80	?   ? ? 
-0x84	?   ? ? 
-0x88	? ? 4 ? 
-0x8c	? ? ? ? 
-0x90	? ? ? ? 
-0x94	: ? ? ? 
-0x98	? ? ? ? 
-0x9c	? ? ? ? 
-0xa0	? ? ? ? 
-0xa4	? ? ? ? 
-0xa8	? ? ? ? 
-0xac	? ? ? ? 
-0xb0	? ? ? ? 
-0xb4	? ? ? ? 
-0xb8	? ? ? ? 
-0xbc	? ? ? ? 
-0xc0	? ? ? ? 
-0xc4	? ? ? ? 
-0xc8	? ? ? ? 
-0xcc	? ? ? ? 
-0xd0	? ? ? ? 
-0xd4	? ? ? ? 
-0xd8	? ? ? ? 
-0xdc	? ? ? ? 
-0xe0	? ? ? ? 
-0xe4	? ? ? ? 
-0xe8	? ? ? ? 
-0xec	? ? ? ? 
-0xf0	? ? ? ? 
-0xf4	? ? ? ? 
-0xf8	? ? ? ? 
-0xfc	? ? ? ? 
+0x80	?   ? ?
+0x84	?   ? ?
+0x88	? ? 4 ?
+0x8c	? ? ? ?
+0x90	? ? ? ?
+0x94	: ? ? ?
+0x98	? ? ? ?
+0x9c	? ? ? ?
+0xa0	? ? ? ?
+0xa4	? ? ? ?
+0xa8	? ? ? ?
+0xac	? ? ? ?
+0xb0	? ? ? ?
+0xb4	? ? ? ?
+0xb8	? ? ? ?
+0xbc	? ? ? ?
+0xc0	? ? ? ?
+0xc4	? ? ? ?
+0xc8	? ? ? ?
+0xcc	? ? ? ?
+0xd0	? ? ? ?
+0xd4	? ? ? ?
+0xd8	? ? ? ?
+0xdc	? ? ? ?
+0xe0	? ? ? ?
+0xe4	? ? ? ?
+0xe8	? ? ? ?
+0xec	? ? ? ?
+0xf0	? ? ? ?
+0xf4	? ? ? ?
+0xf8	? ? ? ?
+0xfc	? ? ? ?
 
-0x00	00 0a c5 92 
-0x04	3e 1d ff 12 
-0x08	bc 1d 75 b8 
-0x0c	3d 1c 00 ce 
-0x10	bb 07 ae d4 
-0x14	3d f9 e5 3f 
-0x18	3b 56 df b3 
-0x1c	ba 73 e2 87 
-0x20	3a ad d5 16 
-0x24	3e 81 d9 ff 
-0x28	ff ff ff ff 
-0x2c	ff ff ff ff 
-0x30	ff ff 4a 5b 
-0x34	1b 37 3e 19 
-0x38	98 c5 bc 20 
-0x3c	8d c9 3d 12 
-0x40	76 a1 39 af 
-0x44	db 2c 3d e8 
-0x48	be a9 3b 44 
-0x4c	68 89 bb 75 
-0x50	06 5f 3b 8a 
-0x54	a1 7f 3e 75 
-0x58	2c 04 4a 5b 
-0x5c	1b 5a ff ff 
-0x60	ff ff ff ff 
-0x64	ff ff ff 3c 
-0x68	65 60 41 3c 
-0x6c	65 60 41 3c 
-0x70	84 eb d9 ff 
-0x74	09 71 20 05 
-0x78	ff ff 47 72 
-0x7c	4d 62 00 0e 
-0x80	02 20 f4 ee 
-0x84	02 20 f4 ee 
-0x88	01 d6 34 00 
-0x8c	16 e4 00 ff 
-0x90	ff ff ff ff 
-0x94	3a a1 01 bf 
-0x98	ff ff ff ff 
-0x9c	ff ff ff ff 
-0xa0	ff ff ff ff 
-0xa4	ff ff ff ff 
-0xa8	ff ff ff ff 
-0xac	ff ff ff ff 
-0xb0	ff ff ff ff 
-0xb4	ff ff ff ff 
-0xb8	ff ff ff ff 
-0xbc	ff ff ff ff 
-0xc0	ff ff ff ff 
-0xc4	ff ff ff ff 
-0xc8	ff ff ff ff 
-0xcc	ff ff ff ff 
-0xd0	ff ff ff ff 
-0xd4	ff ff ff ff 
-0xd8	ff ff ff ff 
-0xdc	ff ff ff ff 
-0xe0	ff ff ff ff 
-0xe4	ff ff ff ff 
-0xe8	ff ff ff ff 
-0xec	ff ff ff ff 
-0xf0	ff f2 ff ff 
-0xf4	ff ff ff ff 
-0xf8	ff ff ff ff 
-0xfc	ff ff ff ff 
+0x00	00 0a c5 92
+0x04	3e 1d ff 12
+0x08	bc 1d 75 b8
+0x0c	3d 1c 00 ce
+0x10	bb 07 ae d4
+0x14	3d f9 e5 3f
+0x18	3b 56 df b3
+0x1c	ba 73 e2 87
+0x20	3a ad d5 16
+0x24	3e 81 d9 ff
+0x28	ff ff ff ff
+0x2c	ff ff ff ff
+0x30	ff ff 4a 5b
+0x34	1b 37 3e 19
+0x38	98 c5 bc 20
+0x3c	8d c9 3d 12
+0x40	76 a1 39 af
+0x44	db 2c 3d e8
+0x48	be a9 3b 44
+0x4c	68 89 bb 75
+0x50	06 5f 3b 8a
+0x54	a1 7f 3e 75
+0x58	2c 04 4a 5b
+0x5c	1b 5a ff ff
+0x60	ff ff ff ff
+0x64	ff ff ff 3c
+0x68	65 60 41 3c
+0x6c	65 60 41 3c
+0x70	84 eb d9 ff
+0x74	09 71 20 05
+0x78	ff ff 47 72
+0x7c	4d 62 00 0e
+0x80	02 20 f4 ee
+0x84	02 20 f4 ee
+0x88	01 d6 34 00
+0x8c	16 e4 00 ff
+0x90	ff ff ff ff
+0x94	3a a1 01 bf
+0x98	ff ff ff ff
+0x9c	ff ff ff ff
+0xa0	ff ff ff ff
+0xa4	ff ff ff ff
+0xa8	ff ff ff ff
+0xac	ff ff ff ff
+0xb0	ff ff ff ff
+0xb4	ff ff ff ff
+0xb8	ff ff ff ff
+0xbc	ff ff ff ff
+0xc0	ff ff ff ff
+0xc4	ff ff ff ff
+0xc8	ff ff ff ff
+0xcc	ff ff ff ff
+0xd0	ff ff ff ff
+0xd4	ff ff ff ff
+0xd8	ff ff ff ff
+0xdc	ff ff ff ff
+0xe0	ff ff ff ff
+0xe4	ff ff ff ff
+0xe8	ff ff ff ff
+0xec	ff ff ff ff
+0xf0	ff f2 ff ff
+0xf4	ff ff ff ff
+0xf8	ff ff ff ff
+0xfc	ff ff ff ff
 
-0x00	00 10 197 146 
-0x04	62 29 255 18 
-0x08	188 29 117 184 
-0x0c	61 28 00 206 
-0x10	187 07 174 212 
-0x14	61 249 229 63 
-0x18	59 86 223 179 
-0x1c	186 115 226 135 
-0x20	58 173 213 22 
-0x24	62 129 217 255 
-0x28	255 255 255 255 
-0x2c	255 255 255 255 
-0x30	255 255 74 91 
-0x34	27 55 62 25 
-0x38	152 197 188 32 
-0x3c	141 201 61 18 
-0x40	118 161 57 175 
-0x44	219 44 61 232 
-0x48	190 169 59 68 
-0x4c	104 137 187 117 
-0x50	06 95 59 138 
-0x54	161 127 62 117 
-0x58	44 04 74 91 
-0x5c	27 90 255 255 
-0x60	255 255 255 255 
-0x64	255 255 255 60 
-0x68	101 96 65 60 
-0x6c	101 96 65 60 
-0x70	132 235 217 255 
-0x74	09 113 32 05 
-0x78	255 255 71 114 
-0x7c	77 98 00 14 
-0x80	02 32 244 238 
-0x84	02 32 244 238 
-0x88	01 214 52 00 
-0x8c	22 228 00 255 
-0x90	255 255 255 255 
-0x94	58 161 01 191 
-0x98	255 255 255 255 
-0x9c	255 255 255 255 
-0xa0	255 255 255 255 
-0xa4	255 255 255 255 
-0xa8	255 255 255 255 
-0xac	255 255 255 255 
-0xb0	255 255 255 255 
-0xb4	255 255 255 255 
-0xb8	255 255 255 255 
-0xbc	255 255 255 255 
-0xc0	255 255 255 255 
-0xc4	255 255 255 255 
-0xc8	255 255 255 255 
-0xcc	255 255 255 255 
-0xd0	255 255 255 255 
-0xd4	255 255 255 255 
-0xd8	255 255 255 255 
-0xdc	255 255 255 255 
-0xe0	255 255 255 255 
-0xe4	255 255 255 255 
-0xe8	255 255 255 255 
-0xec	255 255 255 255 
-0xf0	255 242 255 255 
-0xf4	255 255 255 255 
-0xf8	255 255 255 255 
-0xfc	255 255 255 255 
+0x00	00 10 197 146
+0x04	62 29 255 18
+0x08	188 29 117 184
+0x0c	61 28 00 206
+0x10	187 07 174 212
+0x14	61 249 229 63
+0x18	59 86 223 179
+0x1c	186 115 226 135
+0x20	58 173 213 22
+0x24	62 129 217 255
+0x28	255 255 255 255
+0x2c	255 255 255 255
+0x30	255 255 74 91
+0x34	27 55 62 25
+0x38	152 197 188 32
+0x3c	141 201 61 18
+0x40	118 161 57 175
+0x44	219 44 61 232
+0x48	190 169 59 68
+0x4c	104 137 187 117
+0x50	06 95 59 138
+0x54	161 127 62 117
+0x58	44 04 74 91
+0x5c	27 90 255 255
+0x60	255 255 255 255
+0x64	255 255 255 60
+0x68	101 96 65 60
+0x6c	101 96 65 60
+0x70	132 235 217 255
+0x74	09 113 32 05
+0x78	255 255 71 114
+0x7c	77 98 00 14
+0x80	02 32 244 238
+0x84	02 32 244 238
+0x88	01 214 52 00
+0x8c	22 228 00 255
+0x90	255 255 255 255
+0x94	58 161 01 191
+0x98	255 255 255 255
+0x9c	255 255 255 255
+0xa0	255 255 255 255
+0xa4	255 255 255 255
+0xa8	255 255 255 255
+0xac	255 255 255 255
+0xb0	255 255 255 255
+0xb4	255 255 255 255
+0xb8	255 255 255 255
+0xbc	255 255 255 255
+0xc0	255 255 255 255
+0xc4	255 255 255 255
+0xc8	255 255 255 255
+0xcc	255 255 255 255
+0xd0	255 255 255 255
+0xd4	255 255 255 255
+0xd8	255 255 255 255
+0xdc	255 255 255 255
+0xe0	255 255 255 255
+0xe4	255 255 255 255
+0xe8	255 255 255 255
+0xec	255 255 255 255
+0xf0	255 242 255 255
+0xf4	255 255 255 255
+0xf8	255 255 255 255
+0xfc	255 255 255 255
 
 0x00	0.000000
 0x04	0.154293   <---- A 3x3 matrix?
@@ -258,58 +258,58 @@
 0xf8	-nan
 0xfc	-nan
 
-0x00	? ? ? ? > ? ? ? 
-0x08	? ? u ? = ? ? ? 
-0x10	? ? ? ? = ? ? ? 
-0x18	; V ? ? ? s ? ? 
-0x20	: ? ? ? > ? ? ? 
-0x28	? ? ? ? ? ? ? ? 
-0x30	? ? J [ ? 7 > ? 
-0x38	? ? ?   ? ? = ? 
-0x40	v ? 9 ? ? , = ? 
-0x48	? ? ; D h ? ? u 
-0x50	? _ ; ? ? ? > u 
-0x58	, ? J [ ? Z ? ? 
-0x60	? ? ? ? ? ? ? < 
-0x68	e ` A < e ` A < 
-0x70	? ? ? ? ? q   ? 
-0x78	? ? G r M b ? ? 
-0x80	?   ? ? ?   ? ? 
-0x88	? ? 4 ? ? ? ? ? 
-0x90	? ? ? ? : ? ? ? 
-0x98	? ? ? ? ? ? ? ? 
-0xa0	? ? ? ? ? ? ? ? 
-0xa8	? ? ? ? ? ? ? ? 
-0xb0	? ? ? ? ? ? ? ? 
-0xb8	? ? ? ? ? ? ? ? 
-0xc0	? ? ? ? ? ? ? ? 
-0xc8	? ? ? ? ? ? ? ? 
-0xd0	? ? ? ? ? ? ? ? 
-0xd8	? ? ? ? ? ? ? ? 
-0xe0	? ? ? ? ? ? ? ? 
-0xe8	? ? ? ? ? ? ? ? 
-0xf0	? ? ? ? ? ? ? ? 
-0xf8	? ? ? ? ? ? ? ? 
+0x00	? ? ? ? > ? ? ?
+0x08	? ? u ? = ? ? ?
+0x10	? ? ? ? = ? ? ?
+0x18	; V ? ? ? s ? ?
+0x20	: ? ? ? > ? ? ?
+0x28	? ? ? ? ? ? ? ?
+0x30	? ? J [ ? 7 > ?
+0x38	? ? ?   ? ? = ?
+0x40	v ? 9 ? ? , = ?
+0x48	? ? ; D h ? ? u
+0x50	? _ ; ? ? ? > u
+0x58	, ? J [ ? Z ? ?
+0x60	? ? ? ? ? ? ? <
+0x68	e ` A < e ` A <
+0x70	? ? ? ? ? q   ?
+0x78	? ? G r M b ? ?
+0x80	?   ? ? ?   ? ?
+0x88	? ? 4 ? ? ? ? ?
+0x90	? ? ? ? : ? ? ?
+0x98	? ? ? ? ? ? ? ?
+0xa0	? ? ? ? ? ? ? ?
+0xa8	? ? ? ? ? ? ? ?
+0xb0	? ? ? ? ? ? ? ?
+0xb8	? ? ? ? ? ? ? ?
+0xc0	? ? ? ? ? ? ? ?
+0xc8	? ? ? ? ? ? ? ?
+0xd0	? ? ? ? ? ? ? ?
+0xd8	? ? ? ? ? ? ? ?
+0xe0	? ? ? ? ? ? ? ?
+0xe8	? ? ? ? ? ? ? ?
+0xf0	? ? ? ? ? ? ? ?
+0xf8	? ? ? ? ? ? ? ?
 
-0x00	00 0a c5 92 3e 1d ff 12 
-0x08	bc 1d 75 b8 3d 1c 00 ce 
-0x10	bb 07 ae d4 3d f9 e5 3f 
-0x18	3b 56 df b3 ba 73 e2 87 
-0x20	3a ad d5 16 3e 81 d9 ff 
-0x28	ff ff ff ff ff ff ff ff 
-0x30	ff ff 4a 5b 1b 37 3e 19 
-0x38	98 c5 bc 20 8d c9 3d 12 
-0x40	76 a1 39 af db 2c 3d e8 
-0x48	be a9 3b 44 68 89 bb 75 
-0x50	06 5f 3b 8a a1 7f 3e 75 
-0x58	2c 04 4a 5b 1b 5a ff ff 
-0x60	ff ff ff ff ff ff ff 3c 
-0x68	65 60 41 3c 65 60 41 3c 
-0x70	84 eb d9 ff 09 71 20 05 
-0x78	ff ff 47 72 4d 62 00 0e 
-0x80	02 20 f4 ee 02 20 f4 ee 
-0x88	01 d6 34 00 16 e4 00 ff 
-0x90	ff ff ff ff 3a a1 01 bf 
+0x00	00 0a c5 92 3e 1d ff 12
+0x08	bc 1d 75 b8 3d 1c 00 ce
+0x10	bb 07 ae d4 3d f9 e5 3f
+0x18	3b 56 df b3 ba 73 e2 87
+0x20	3a ad d5 16 3e 81 d9 ff
+0x28	ff ff ff ff ff ff ff ff
+0x30	ff ff 4a 5b 1b 37 3e 19
+0x38	98 c5 bc 20 8d c9 3d 12
+0x40	76 a1 39 af db 2c 3d e8
+0x48	be a9 3b 44 68 89 bb 75
+0x50	06 5f 3b 8a a1 7f 3e 75
+0x58	2c 04 4a 5b 1b 5a ff ff
+0x60	ff ff ff ff ff ff ff 3c
+0x68	65 60 41 3c 65 60 41 3c
+0x70	84 eb d9 ff 09 71 20 05
+0x78	ff ff 47 72 4d 62 00 0e
+0x80	02 20 f4 ee 02 20 f4 ee
+0x88	01 d6 34 00 16 e4 00 ff
+0x90	ff ff ff ff 3a a1 01 bf
 0x98	ff ff ff ff ff ff ff ff <---- uninteresting
 0xa0	ff ff ff ff ff ff ff ff <-|
 0xa8	ff ff ff ff ff ff ff ff <-|
@@ -324,68 +324,253 @@
 0xf0	ff f2 ff ff ff ff ff ff <-|
 0xf8	ff ff ff ff ff ff ff ff <-/
 
-0x00	00 10 197 146 62 29 255 18 
-0x08	188 29 117 184 61 28 00 206 
-0x10	187 07 174 212 61 249 229 63 
-0x18	59 86 223 179 186 115 226 135 
-0x20	58 173 213 22 62 129 217 255 
-0x28	255 255 255 255 255 255 255 255 
-0x30	255 255 74 91 27 55 62 25 
-0x38	152 197 188 32 141 201 61 18 
-0x40	118 161 57 175 219 44 61 232 
-0x48	190 169 59 68 104 137 187 117 
-0x50	06 95 59 138 161 127 62 117 
-0x58	44 04 74 91 27 90 255 255 
-0x60	255 255 255 255 255 255 255 60 
-0x68	101 96 65 60 101 96 65 60 
-0x70	132 235 217 255 09 113 32 05 
-0x78	255 255 71 114 77 98 00 14 
-0x80	02 32 244 238 02 32 244 238 
-0x88	01 214 52 00 22 228 00 255 
-0x90	255 255 255 255 58 161 01 191 
-0x98	255 255 255 255 255 255 255 255 
-0xa0	255 255 255 255 255 255 255 255 
-0xa8	255 255 255 255 255 255 255 255 
-0xb0	255 255 255 255 255 255 255 255 
-0xb8	255 255 255 255 255 255 255 255 
-0xc0	255 255 255 255 255 255 255 255 
-0xc8	255 255 255 255 255 255 255 255 
-0xd0	255 255 255 255 255 255 255 255 
-0xd8	255 255 255 255 255 255 255 255 
-0xe0	255 255 255 255 255 255 255 255 
-0xe8	255 255 255 255 255 255 255 255 
-0xf0	255 242 255 255 255 255 255 255 
-0xf8	255 255 255 255 255 255 255 255 
+0x00	00 10 197 146 62 29 255 18
+0x08	188 29 117 184 61 28 00 206
+0x10	187 07 174 212 61 249 229 63
+0x18	59 86 223 179 186 115 226 135
+0x20	58 173 213 22 62 129 217 255
+0x28	255 255 255 255 255 255 255 255
+0x30	255 255 74 91 27 55 62 25
+0x38	152 197 188 32 141 201 61 18
+0x40	118 161 57 175 219 44 61 232
+0x48	190 169 59 68 104 137 187 117
+0x50	06 95 59 138 161 127 62 117
+0x58	44 04 74 91 27 90 255 255
+0x60	255 255 255 255 255 255 255 60
+0x68	101 96 65 60 101 96 65 60
+0x70	132 235 217 255 09 113 32 05
+0x78	255 255 71 114 77 98 00 14
+0x80	02 32 244 238 02 32 244 238
+0x88	01 214 52 00 22 228 00 255
+0x90	255 255 255 255 58 161 01 191
+0x98	255 255 255 255 255 255 255 255
+0xa0	255 255 255 255 255 255 255 255
+0xa8	255 255 255 255 255 255 255 255
+0xb0	255 255 255 255 255 255 255 255
+0xb8	255 255 255 255 255 255 255 255
+0xc0	255 255 255 255 255 255 255 255
+0xc8	255 255 255 255 255 255 255 255
+0xd0	255 255 255 255 255 255 255 255
+0xd8	255 255 255 255 255 255 255 255
+0xe0	255 255 255 255 255 255 255 255
+0xe8	255 255 255 255 255 255 255 255
+0xf0	255 242 255 255 255 255 255 255
+0xf8	255 255 255 255 255 255 255 255
 
-0x00	0.0000 
-0x08	0.0000 
-0x10	0.0000 
-0x18	0.0000 
-0x20	0.0000 
-0x28	0.0000 
-0x30	0.0000 
-0x38	0.0000 
-0x40	0.0000 
-0x48	0.0000 
-0x50	0.0000 
-0x58	0.0000 
-0x60	0.0000 
-0x68	0.0000 
-0x70	0.0000 
-0x78	0.0000 
-0x80	0.0000 
-0x88	0.0000 
-0x90	0.0000 
-0x98	0.0000 
-0xa0	0.0000 
-0xa8	0.0000 
-0xb0	0.0000 
-0xb8	0.0000 
-0xc0	0.0000 
-0xc8	0.0000 
-0xd0	0.0000 
-0xd8	0.0000 
-0xe0	0.0000 
-0xe8	0.0000 
-0xf0	0.0000 
-0xf8	0.0000 
+0x00	0.0000
+0x08	0.0000
+0x10	0.0000
+0x18	0.0000
+0x20	0.0000
+0x28	0.0000
+0x30	0.0000
+0x38	0.0000
+0x40	0.0000
+0x48	0.0000
+0x50	0.0000
+0x58	0.0000
+0x60	0.0000
+0x68	0.0000
+0x70	0.0000
+0x78	0.0000
+0x80	0.0000
+0x88	0.0000
+0x90	0.0000
+0x98	0.0000
+0xa0	0.0000
+0xa8	0.0000
+0xb0	0.0000
+0xb8	0.0000
+0xc0	0.0000
+0xc8	0.0000
+0xd0	0.0000
+0xd8	0.0000
+0xe0	0.0000
+0xe8	0.0000
+0xf0	0.0000
+0xf8	0.0000
+
+************* Offset 2 bytes... ************
+
+0x02	? ? > ?
+0x06	? ? ? ?
+0x0a	u ? = ?
+0x0e	? ? ? ?
+0x12	? ? = ?
+0x16	? ? ; V
+0x1a	? ? ? s
+0x1e	? ? : ?
+0x22	? ? > ?
+0x26	? ? ? ?
+0x2a	? ? ? ?
+0x2e	? ? ? ?
+0x32	J [ ? 7
+0x36	> ? ? ?
+0x3a	?   ? ?
+0x3e	= ? v ?
+0x42	9 ? ? ,
+0x46	= ? ? ?
+0x4a	; D h ?
+0x4e	? u ? _
+0x52	; ? ? ?
+0x56	> u , ?
+0x5a	J [ ? Z
+0x5e	? ? ? ?
+0x62	? ? ? ?
+0x66	? < e `
+0x6a	A < e `
+0x6e	A < ? ?
+0x72	? ? ? q
+0x76	  ? ? ?
+0x7a	G r M b <------ This is the start of the unlock string
+0x7e	? ? ?
+0x82	? ? ?
+0x86	? ? ? ?
+0x8a	4 ? ? ?
+0x8e	? ? ? ?
+0x92	? ? : ?
+0x96	? ? ? ?
+0x9a	? ? ? ?
+0x9e	? ? ? ?
+0xa2	? ? ? ?
+0xa6	? ? ? ?
+0xaa	? ? ? ?
+0xae	? ? ? ?
+0xb2	? ? ? ?
+0xb6	? ? ? ?
+0xba	? ? ? ?
+0xbe	? ? ? ?
+0xc2	? ? ? ?
+0xc6	? ? ? ?
+0xca	? ? ? ?
+0xce	? ? ? ?
+0xd2	? ? ? ?
+0xd6	? ? ? ?
+0xda	? ? ? ?
+0xde	? ? ? ?
+0xe2	? ? ? ?
+0xe6	? ? ? ?
+0xea	? ? ? ?
+0xee	? ? ? g
+
+0x02	197 146 62 29
+0x06	255 18 188 29
+0x0a	117 184 61 28
+0x0e	00 206 187 07
+0x12	174 212 61 249
+0x16	229 63 59 86
+0x1a	223 179 186 115
+0x1e	226 135 58 173
+0x22	213 22 62 129
+0x26	217 255 255 255
+0x2a	255 255 255 255
+0x2e	255 255 255 255
+0x32	74 91 27 55
+0x36	62 25 152 197
+0x3a	188 32 141 201
+0x3e	61 18 118 161
+0x42	57 175 219 44
+0x46	61 232 190 169
+0x4a	59 68 104 137
+0x4e	187 117 06 95
+0x52	59 138 161 127
+0x56	62 117 44 04
+0x5a	74 91 27 90
+0x5e	255 255 255 255
+0x62	255 255 255 255
+0x66	255 60 101 96
+0x6a	65 60 101 96
+0x6e	65 60 132 235
+0x72	217 255 09 113
+0x76	32 05 255 255
+0x7a	71 114 77 98
+0x7e	00 14 02 32
+0x82	244 238 02 32
+0x86	244 238 01 214
+0x8a	52 00 22 228
+0x8e	00 255 255 255
+0x92	255 255 58 161
+0x96	01 191 255 255
+0x9a	255 255 255 255
+0x9e	255 255 255 255
+0xa2	255 255 255 255
+0xa6	255 255 255 255
+0xaa	255 255 255 255
+0xae	255 255 255 255
+0xb2	255 255 255 255
+0xb6	255 255 255 255
+0xba	255 255 255 255
+0xbe	255 255 255 255
+0xc2	255 255 255 255
+0xc6	255 255 255 255
+0xca	255 255 255 255
+0xce	255 255 255 255
+0xd2	255 255 255 255
+0xd6	255 255 255 255
+0xda	255 255 255 255
+0xde	255 255 255 255
+0xe2	255 255 255 255
+0xe6	255 255 255 255
+0xea	255 255 255 255
+0xee	255 255 255 103
+
+0x02	-1.6874
+0x06	-4679.7642
+0x0a	-195044027383880770936561858581110980608.0000
+0x0e	467100618820694060032678088933376.0000
+0x12	0.0000
+0x16	-0.0000
+0x1a	-56441659567596147572736.0000
+0x1e	-25901580244588953600.0000
+0x22	-1247269242787980115968.0000
+0x26	-10324699774976.0000
+0x2a	-9007198717870080.0000
+0x2e	-nan
+0x32	-nan
+0x36	3589837.7500
+0x3a	0.1500   <---- ANOTHER MATRIX
+0x3e	-0.0098  <-|
+0x42	0.0358   <-|
+0x46	0.0003   <-|
+0x4a	0.1136   <-|
+0x4e	0.0030   <-|
+0x52	-0.0037  <-|
+0x56	0.0042   <-|
+0x5a	0.2394   <-/
+0x5e	3589846.5000
+0x62	-nan
+0x66	-nan
+0x6a	-250421232301598152256758006398079467520.0000
+0x6e	11.7747 <----- interesting values
+0x72	11.7825 <-/
+0x76	-8973312499646464.0000
+0x7a	0.0000
+0x7e	62029.3828
+0x82	0.0000
+0x86	-150855682672326261644276002717696.0000
+0x8a	-150854966988241049783804576661504.0000
+0x8e	0.0000
+0x92	0.0000
+0x96	-nan
+0x9a	0.0000
+0x9e	-nan
+0xa2	-nan
+0xa6	-nan
+0xaa	-nan
+0xae	-nan
+0xb2	-nan
+0xb6	-nan
+0xba	-nan
+0xbe	-nan
+0xc2	-nan
+0xc6	-nan
+0xca	-nan
+0xce	-nan
+0xd2	-nan
+0xd6	-nan
+0xda	-nan
+0xde	-nan
+0xe2	-nan
+0xe6	-nan
+0xea	-nan
+0xee	-nan
diff --git a/src/gcm-huey-example.c b/src/gcm-huey-example.c
index c14c096..bcf5586 100644
--- a/src/gcm-huey-example.c
+++ b/src/gcm-huey-example.c
@@ -212,7 +212,8 @@ typedef struct {
 	gboolean		 connected;
 	libusb_device		*device;
 	libusb_device_handle	*handle;
-	GcmMat3x3		 calibration_matrix;
+	GcmMat3x3		 calibration_matrix1;
+	GcmMat3x3		 calibration_matrix2;
 } GcmSensorHuey;
 
 /**
@@ -638,34 +639,44 @@ gcm_sensor_huey_read_registers (GcmSensorHuey *huey, GError **error)
 {
 	gboolean ret;
 	guint8 i, j;
-	guint len = 0xff;
+	guint len = 0xf0;
 	guint8 data[len];
 	gchar unlock[5];
 
+if (1) {
 	/* get unlock string */
 	ret = gcm_sensor_huey_read_register_string (huey, 0x7a, unlock, 5, error);
 	if (!ret)
 		goto out;
 	g_print ("Unlock string: %s\n", unlock);
 
+
 	/* get matrix */
-	gcm_mat33_clear (&huey->calibration_matrix);
-	ret = gcm_sensor_huey_read_register_matrix (huey, 0x04, &huey->calibration_matrix, error);
+	gcm_mat33_clear (&huey->calibration_matrix1);
+	ret = gcm_sensor_huey_read_register_matrix (huey, 0x04, &huey->calibration_matrix1, error);
+	if (!ret)
+		goto out;
+	g_print ("device matrix1: %s\n", gcm_mat33_to_string (&huey->calibration_matrix1));
+
+	/* get another matrix, although this one is worse... */
+	gcm_mat33_clear (&huey->calibration_matrix2);
+	ret = gcm_sensor_huey_read_register_matrix (huey, 0x36, &huey->calibration_matrix2, error);
 	if (!ret)
 		goto out;
-	g_print ("device matrix: %s\n", gcm_mat33_to_string (&huey->calibration_matrix));
+	g_print ("device matrix2: %s\n", gcm_mat33_to_string (&huey->calibration_matrix2));
+}
 
-goto out;
+	goto out;
 
 	/* We read from 0x04 to 0x72 at startup */
-	for (i=0x00; i<=len; i++) {
+	for (i=2; i<=len; i++) {
 		ret = gcm_sensor_huey_read_register_byte (huey, i, &data[i], error);
 		if (!ret)
 			goto out;
 	}
 
 	/* try to find patterns */
-	for (i=0; i<len; i+=4) {
+	for (i=2; i<len; i+=4) {
 		g_print ("0x%02x\t", i);
 		for (j=0; j<4; j++)
 			g_print ("%c ", g_ascii_isprint (data[i+j]) ? data[i+j] : '?');
@@ -673,7 +684,7 @@ goto out;
 	}
 	g_print ("\n");
 
-	for (i=0; i<len; i+=4) {
+	for (i=2; i<len; i+=4) {
 		g_print ("0x%02x\t", i);
 		for (j=0; j<4; j++)
 			g_print ("%02i ", data[i+j]);
@@ -681,7 +692,7 @@ goto out;
 	}
 	g_print ("\n");
 
-	for (i=0; i<len; i+=4) {
+	for (i=2; i<len; i+=4) {
 		g_print ("0x%02x\t", i);
 		g_print ("%.4f ", gcm_sensor_huey_data_to_float (&data[i]));
 		g_print ("\n");
@@ -785,7 +796,7 @@ gcm_sensor_huey_get_color (GcmSensorHuey *huey, GcmColorXYZ *values, GError **er
 
 	/* it would be rediculous for the device to emit RGB, it would be completely arbitrary --
 	 * we assume the matrix of data is designed to convert to LAB or XYZ */
-	gcm_mat33_vector_multiply (&huey->calibration_matrix, input, output);
+	gcm_mat33_vector_multiply (&huey->calibration_matrix1, input, output);
 
 	/* scale correct */
 	gcm_vec3_scalar_multiply (output, HUEY_XYZ_POST_MULTIPLY_SCALE_FACTOR, output);
@@ -885,7 +896,7 @@ if (0) {
 }
 
 /* try to get color value */
-if (1) {
+if (0) {
 
 	GcmColorXYZ values;
 	ret = gcm_sensor_huey_get_color (huey, &values, &error);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]