canon_lide70 simplified going back

merge-requests/539/head
pimvantend 2020-09-07 15:15:21 +02:00
rodzic cea2a83ea2
commit 17ab6caa38
1 zmienionych plików z 17 dodań i 285 usunięć

Wyświetl plik

@ -325,17 +325,6 @@ cp2155_set_gamma_red_enhanced (int fd)
cp2155_write_gamma_block (fd, 0x200, cp2155_gamma_standard_data);
}
static void
cp2155_motor (int fd, byte v001, byte v002)
{
DBG (1, "cp2155_motor %02x %02x\n", v001, v002);
cp2155_set (fd, 0x10, v001);
cp2155_set (fd, 0x11, v002);
cp2155_set (fd, 0x60, 0x15);
cp2155_set (fd, 0x80, 0x12);
cp2155_set (fd, 0x03, 0x01); /* starts motor */
}
void
make_buf (size_t count, unsigned char *buf)
{
@ -2985,7 +2974,11 @@ back2225 (int fd, unsigned char *buf)
write_buf (fd, count, buf, 0x03, 0x04);
write_buf (fd, count, buf, 0x03, 0x08);
cp2155_motor (fd, 0x05, 0x35);
cp2155_set (fd, 0x10, 0x05);
cp2155_set (fd, 0x11, 0x35);
cp2155_set (fd, 0x60, 0x15);
cp2155_set (fd, 0x80, 0x12);
cp2155_set (fd, 0x03, 0x01);
}
@ -3116,18 +3109,7 @@ back2224 (int fd, unsigned char *buf)
cp2155_set (fd, 0xca, 0x00);
cp2155_set (fd, 0xca, 0x00);
cp2155_set (fd, 0x18, 0x00);
cp2155_set (fd, 0x71, 0x01);
cp2155_set (fd, 0x0230, 0x11);
cp2155_set (fd, 0x71, 0x14);
cp2155_set (fd, 0x72, 0x02);
cp2155_set (fd, 0x73, 0x00);
cp2155_set (fd, 0x74, 0x03);
cp2155_set (fd, 0x75, 0x00);
cp2155_set (fd, 0x76, 0x00);
cp2155_set (fd, 0x0239, 0x40);
cp2155_set (fd, 0x0238, 0x89);
cp2155_set (fd, 0x023c, 0x2f);
cp2155_set (fd, 0x0264, 0x20);
memcpy (buf + 0x0000,
"\x04\x70\xf4\x01\x80\x25\x00\x25\x84\x24\x0b\x24\x96\x23\x23\x23",
16);
@ -3226,271 +3208,21 @@ back2224 (int fd, unsigned char *buf)
16);
memcpy (buf + 0x0200, "\x00\x00\x00\x00", 4);
count = 516;
sanei_usb_write_bulk (fd, buf, &count);
cp2155_set (fd, 0x71, 0x01);
cp2155_set (fd, 0x0230, 0x11);
cp2155_set (fd, 0x71, 0x14);
cp2155_set (fd, 0x72, 0x02);
cp2155_set (fd, 0x73, 0x00);
cp2155_set (fd, 0x74, 0x03);
cp2155_set (fd, 0x75, 0x02);
cp2155_set (fd, 0x76, 0x00);
cp2155_set (fd, 0x0239, 0x40);
cp2155_set (fd, 0x0238, 0x89);
cp2155_set (fd, 0x023c, 0x2f);
cp2155_set (fd, 0x0264, 0x20);
memcpy (buf + 0x0000,
"\x04\x70\xf4\x01\x80\x25\x00\x25\x84\x24\x0b\x24\x96\x23\x23\x23",
16);
memcpy (buf + 0x0010,
"\xb3\x22\x46\x22\xdb\x21\x73\x21\x0e\x21\xab\x20\x4a\x20\xeb\x1f",
16);
memcpy (buf + 0x0020,
"\x8f\x1f\x34\x1f\xdc\x1e\x85\x1e\x31\x1e\xde\x1d\x8d\x1d\x3e\x1d",
16);
memcpy (buf + 0x0030,
"\xf0\x1c\xa4\x1c\x59\x1c\x10\x1c\xc9\x1b\x83\x1b\x3e\x1b\xfa\x1a",
16);
memcpy (buf + 0x0040,
"\xb8\x1a\x77\x1a\x38\x1a\xf9\x19\xbc\x19\x80\x19\x44\x19\x0a\x19",
16);
memcpy (buf + 0x0050,
"\xd1\x18\x99\x18\x62\x18\x2c\x18\xf7\x17\xc3\x17\x8f\x17\x5d\x17",
16);
memcpy (buf + 0x0060,
"\x2b\x17\xfa\x16\xca\x16\x9b\x16\x6c\x16\x3e\x16\x11\x16\xe5\x15",
16);
memcpy (buf + 0x0070,
"\xb9\x15\x8e\x15\x64\x15\x3a\x15\x11\x15\xe9\x14\xc1\x14\x9a\x14",
16);
memcpy (buf + 0x0080,
"\x73\x14\x4d\x14\x27\x14\x02\x14\xde\x13\xba\x13\x96\x13\x74\x13",
16);
memcpy (buf + 0x0090,
"\x51\x13\x2f\x13\x0d\x13\xec\x12\xcc\x12\xab\x12\x8c\x12\x6c\x12",
16);
memcpy (buf + 0x00a0,
"\x4d\x12\x2f\x12\x11\x12\xf3\x11\xd5\x11\xb8\x11\x9c\x11\x80\x11",
16);
memcpy (buf + 0x00b0,
"\x64\x11\x48\x11\x2d\x11\x12\x11\xf7\x10\xdd\x10\xc3\x10\xa9\x10",
16);
memcpy (buf + 0x00c0,
"\x90\x10\x77\x10\x5e\x10\x46\x10\x2e\x10\x16\x10\xfe\x0f\xe7\x0f",
16);
memcpy (buf + 0x00d0,
"\xd0\x0f\xb9\x0f\xa2\x0f\x8c\x0f\x76\x0f\x60\x0f\x4b\x0f\x35\x0f",
16);
memcpy (buf + 0x00e0,
"\x20\x0f\x0b\x0f\xf7\x0e\xe2\x0e\xce\x0e\xba\x0e\xa6\x0e\x92\x0e",
16);
memcpy (buf + 0x00f0,
"\x7f\x0e\x6c\x0e\x59\x0e\x46\x0e\x33\x0e\x21\x0e\x0f\x0e\xfd\x0d",
16);
memcpy (buf + 0x0100,
"\xeb\x0d\xd9\x0d\xc8\x0d\xb6\x0d\xa5\x0d\x94\x0d\x83\x0d\x73\x0d",
16);
memcpy (buf + 0x0110,
"\x62\x0d\x52\x0d\x41\x0d\x31\x0d\x22\x0d\x12\x0d\x02\x0d\xf3\x0c",
16);
memcpy (buf + 0x0120,
"\xe3\x0c\xd4\x0c\xc5\x0c\xb6\x0c\xa7\x0c\x99\x0c\x8a\x0c\x7c\x0c",
16);
memcpy (buf + 0x0130,
"\x6e\x0c\x60\x0c\x52\x0c\x44\x0c\x36\x0c\x28\x0c\x1b\x0c\x0d\x0c",
16);
memcpy (buf + 0x0140,
"\x00\x0c\xf3\x0b\xe6\x0b\xd9\x0b\xcc\x0b\xbf\x0b\xb3\x0b\xa6\x0b",
16);
memcpy (buf + 0x0150,
"\x9a\x0b\x8e\x0b\x81\x0b\x75\x0b\x69\x0b\x5d\x0b\x52\x0b\x46\x0b",
16);
memcpy (buf + 0x0160,
"\x3a\x0b\x2f\x0b\x23\x0b\x18\x0b\x0d\x0b\x02\x0b\xf6\x0a\xeb\x0a",
16);
memcpy (buf + 0x0170,
"\xe1\x0a\xd6\x0a\xcb\x0a\xc0\x0a\xb6\x0a\xab\x0a\xa1\x0a\x97\x0a",
16);
memcpy (buf + 0x0180,
"\x8c\x0a\x82\x0a\x78\x0a\x6e\x0a\x64\x0a\x5a\x0a\x50\x0a\x47\x0a",
16);
memcpy (buf + 0x0190,
"\x3d\x0a\x33\x0a\x2a\x0a\x20\x0a\x17\x0a\x0e\x0a\x04\x0a\xfb\x09",
16);
memcpy (buf + 0x01a0,
"\xf2\x09\xe9\x09\xe0\x09\xd7\x09\xce\x09\xc6\x09\xbd\x09\xb4\x09",
16);
memcpy (buf + 0x01b0,
"\xab\x09\xa3\x09\x9a\x09\x92\x09\x8a\x09\x81\x09\x79\x09\x71\x09",
16);
memcpy (buf + 0x01c0,
"\x69\x09\x61\x09\x59\x09\x51\x09\x49\x09\x41\x09\x39\x09\x31\x09",
16);
memcpy (buf + 0x01d0,
"\x29\x09\x22\x09\x1a\x09\x12\x09\x0b\x09\x03\x09\xfc\x08\xf5\x08",
16);
memcpy (buf + 0x01e0,
"\xed\x08\xe6\x08\xdf\x08\xd8\x08\xd0\x08\xc9\x08\xc2\x08\xbb\x08",
16);
memcpy (buf + 0x01f0,
"\xb4\x08\xad\x08\xa6\x08\xa0\x08\x00\x00\x00\x00\x00\x00\x00\x00",
16);
memcpy (buf + 0x0200, "\x00\x00\x00\x00", 4);
count = 516;
sanei_usb_write_bulk (fd, buf, &count);
cp2155_set (fd, 0x71, 0x01);
cp2155_set (fd, 0x0230, 0x11);
cp2155_set (fd, 0x71, 0x14);
cp2155_set (fd, 0x72, 0x00);
cp2155_set (fd, 0x73, 0x20);
cp2155_set (fd, 0x74, 0x03);
cp2155_set (fd, 0x75, 0x04);
cp2155_set (fd, 0x76, 0x00);
cp2155_set (fd, 0x0239, 0x40);
cp2155_set (fd, 0x0238, 0x89);
cp2155_set (fd, 0x023c, 0x2f);
cp2155_set (fd, 0x0264, 0x20);
memcpy (buf + 0x0000,
write_buf (fd, count, buf, 0x03, 0x00);
write_buf (fd, count, buf, 0x03, 0x02);
write_buf (fd, count, buf, 0x03, 0x06);
memcpy (buf + 0x00000000,
"\x04\x70\x18\x00\x80\x25\xc0\x1c\x4f\x17\x9a\x13\xe9\x10\xde\x0e",
16);
memcpy (buf + 0x0010,
"\x44\x0d\xfa\x0b\xea\x0a\x07\x0a\x46\x09\xa0\x08\x4a\x20\xeb\x1f",
memcpy (buf + 0x00000010,
"\x44\x0d\xfa\x0b\xea\x0a\x07\x0a\x46\x09\xa0\x08\x80\x25\x80\x25",
16);
memcpy (buf + 0x0020, "\x8f\x1f\x34\x1f", 4);
memcpy (buf + 0x00000020, "\x80\x25\x80\x25", 4);
count = 36;
sanei_usb_write_bulk (fd, buf, &count);
cp2155_set (fd, 0x71, 0x01);
cp2155_set (fd, 0x0230, 0x11);
cp2155_set (fd, 0x71, 0x14);
cp2155_set (fd, 0x72, 0x02);
cp2155_set (fd, 0x73, 0x00);
cp2155_set (fd, 0x74, 0x03);
cp2155_set (fd, 0x75, 0x06);
cp2155_set (fd, 0x76, 0x00);
cp2155_set (fd, 0x0239, 0x40);
cp2155_set (fd, 0x0238, 0x89);
cp2155_set (fd, 0x023c, 0x2f);
cp2155_set (fd, 0x0264, 0x20);
memcpy (buf + 0x0000,
"\x04\x70\xf4\x01\x80\x25\x00\x25\x84\x24\x0b\x24\x96\x23\x23\x23",
16);
memcpy (buf + 0x0010,
"\xb3\x22\x46\x22\xdb\x21\x73\x21\x0e\x21\xab\x20\x4a\x20\xeb\x1f",
16);
memcpy (buf + 0x0020,
"\x8f\x1f\x34\x1f\xdc\x1e\x85\x1e\x31\x1e\xde\x1d\x8d\x1d\x3e\x1d",
16);
memcpy (buf + 0x0030,
"\xf0\x1c\xa4\x1c\x59\x1c\x10\x1c\xc9\x1b\x83\x1b\x3e\x1b\xfa\x1a",
16);
memcpy (buf + 0x0040,
"\xb8\x1a\x77\x1a\x38\x1a\xf9\x19\xbc\x19\x80\x19\x44\x19\x0a\x19",
16);
memcpy (buf + 0x0050,
"\xd1\x18\x99\x18\x62\x18\x2c\x18\xf7\x17\xc3\x17\x8f\x17\x5d\x17",
16);
memcpy (buf + 0x0060,
"\x2b\x17\xfa\x16\xca\x16\x9b\x16\x6c\x16\x3e\x16\x11\x16\xe5\x15",
16);
memcpy (buf + 0x0070,
"\xb9\x15\x8e\x15\x64\x15\x3a\x15\x11\x15\xe9\x14\xc1\x14\x9a\x14",
16);
memcpy (buf + 0x0080,
"\x73\x14\x4d\x14\x27\x14\x02\x14\xde\x13\xba\x13\x96\x13\x74\x13",
16);
memcpy (buf + 0x0090,
"\x51\x13\x2f\x13\x0d\x13\xec\x12\xcc\x12\xab\x12\x8c\x12\x6c\x12",
16);
memcpy (buf + 0x00a0,
"\x4d\x12\x2f\x12\x11\x12\xf3\x11\xd5\x11\xb8\x11\x9c\x11\x80\x11",
16);
memcpy (buf + 0x00b0,
"\x64\x11\x48\x11\x2d\x11\x12\x11\xf7\x10\xdd\x10\xc3\x10\xa9\x10",
16);
memcpy (buf + 0x00c0,
"\x90\x10\x77\x10\x5e\x10\x46\x10\x2e\x10\x16\x10\xfe\x0f\xe7\x0f",
16);
memcpy (buf + 0x00d0,
"\xd0\x0f\xb9\x0f\xa2\x0f\x8c\x0f\x76\x0f\x60\x0f\x4b\x0f\x35\x0f",
16);
memcpy (buf + 0x00e0,
"\x20\x0f\x0b\x0f\xf7\x0e\xe2\x0e\xce\x0e\xba\x0e\xa6\x0e\x92\x0e",
16);
memcpy (buf + 0x00f0,
"\x7f\x0e\x6c\x0e\x59\x0e\x46\x0e\x33\x0e\x21\x0e\x0f\x0e\xfd\x0d",
16);
memcpy (buf + 0x0100,
"\xeb\x0d\xd9\x0d\xc8\x0d\xb6\x0d\xa5\x0d\x94\x0d\x83\x0d\x73\x0d",
16);
memcpy (buf + 0x0110,
"\x62\x0d\x52\x0d\x41\x0d\x31\x0d\x22\x0d\x12\x0d\x02\x0d\xf3\x0c",
16);
memcpy (buf + 0x0120,
"\xe3\x0c\xd4\x0c\xc5\x0c\xb6\x0c\xa7\x0c\x99\x0c\x8a\x0c\x7c\x0c",
16);
memcpy (buf + 0x0130,
"\x6e\x0c\x60\x0c\x52\x0c\x44\x0c\x36\x0c\x28\x0c\x1b\x0c\x0d\x0c",
16);
memcpy (buf + 0x0140,
"\x00\x0c\xf3\x0b\xe6\x0b\xd9\x0b\xcc\x0b\xbf\x0b\xb3\x0b\xa6\x0b",
16);
memcpy (buf + 0x0150,
"\x9a\x0b\x8e\x0b\x81\x0b\x75\x0b\x69\x0b\x5d\x0b\x52\x0b\x46\x0b",
16);
memcpy (buf + 0x0160,
"\x3a\x0b\x2f\x0b\x23\x0b\x18\x0b\x0d\x0b\x02\x0b\xf6\x0a\xeb\x0a",
16);
memcpy (buf + 0x0170,
"\xe1\x0a\xd6\x0a\xcb\x0a\xc0\x0a\xb6\x0a\xab\x0a\xa1\x0a\x97\x0a",
16);
memcpy (buf + 0x0180,
"\x8c\x0a\x82\x0a\x78\x0a\x6e\x0a\x64\x0a\x5a\x0a\x50\x0a\x47\x0a",
16);
memcpy (buf + 0x0190,
"\x3d\x0a\x33\x0a\x2a\x0a\x20\x0a\x17\x0a\x0e\x0a\x04\x0a\xfb\x09",
16);
memcpy (buf + 0x01a0,
"\xf2\x09\xe9\x09\xe0\x09\xd7\x09\xce\x09\xc6\x09\xbd\x09\xb4\x09",
16);
memcpy (buf + 0x01b0,
"\xab\x09\xa3\x09\x9a\x09\x92\x09\x8a\x09\x81\x09\x79\x09\x71\x09",
16);
memcpy (buf + 0x01c0,
"\x69\x09\x61\x09\x59\x09\x51\x09\x49\x09\x41\x09\x39\x09\x31\x09",
16);
memcpy (buf + 0x01d0,
"\x29\x09\x22\x09\x1a\x09\x12\x09\x0b\x09\x03\x09\xfc\x08\xf5\x08",
16);
memcpy (buf + 0x01e0,
"\xed\x08\xe6\x08\xdf\x08\xd8\x08\xd0\x08\xc9\x08\xc2\x08\xbb\x08",
16);
memcpy (buf + 0x01f0,
"\xb4\x08\xad\x08\xa6\x08\xa0\x08\x00\x00\x00\x00\x00\x00\x00\x00",
16);
memcpy (buf + 0x0200, "\x00\x00\x00\x00", 4);
count = 516;
sanei_usb_write_bulk (fd, buf, &count);
cp2155_set (fd, 0x71, 0x01);
cp2155_set (fd, 0x0230, 0x11);
cp2155_set (fd, 0x71, 0x14);
cp2155_set (fd, 0x72, 0x00);
cp2155_set (fd, 0x73, 0x20);
cp2155_set (fd, 0x74, 0x03);
cp2155_set (fd, 0x75, 0x08);
cp2155_set (fd, 0x76, 0x00);
cp2155_set (fd, 0x0239, 0x40);
cp2155_set (fd, 0x0238, 0x89);
cp2155_set (fd, 0x023c, 0x2f);
cp2155_set (fd, 0x0264, 0x20);
memcpy (buf + 0x0000,
"\x04\x70\x18\x00\x80\x25\xc0\x1c\x4f\x17\x9a\x13\xe9\x10\xde\x0e",
16);
memcpy (buf + 0x0010,
"\x44\x0d\xfa\x0b\xea\x0a\x07\x0a\x46\x09\xa0\x08\x4a\x20\xeb\x1f",
16);
memcpy (buf + 0x0020, "\x8f\x1f\x34\x1f", 4);
count = 36;
sanei_usb_write_bulk (fd, buf, &count);
write_buf (fd, count, buf, 0x03, 0x04);
write_buf (fd, count, buf, 0x03, 0x08);
cp2155_set (fd, 0x10, 0x05);
cp2155_set (fd, 0x11, 0x35);
cp2155_set (fd, 0x60, 0x01);