summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--camlibs/spca504_flash/README4
-rw-r--r--camlibs/spca504_flash/library.c3
-rw-r--r--camlibs/spca504_flash/spca504_flash.c6
-rw-r--r--camlibs/spca504_flash/spca504_flash.h2
4 files changed, 12 insertions, 3 deletions
diff --git a/camlibs/spca504_flash/README b/camlibs/spca504_flash/README
index 76d1ece1f..26ab895e7 100644
--- a/camlibs/spca504_flash/README
+++ b/camlibs/spca504_flash/README
@@ -2,6 +2,7 @@ This camlib supports the following cameras:
Aiptek Pencam
Medion MD 5319 (Aldi-Cam)
+nisis Quickpix Qp3
There are probably others with this chip and flash storage which we dont know
about. They should also work.
@@ -16,5 +17,8 @@ Without Armin this would not have been possible, so if you own a camera that
is supported by this driver consider sending him an email and thanking him for
risking his cam so yours works on linux ;).
+Thanks also to Martyn Ranyard <ranyardm@lineone.net> for testing and reporting
+success with the nisis Quickpix Qp3. He also helped debug the beginnings of
+avi support.
Till Adam <till@adam-lilienthal.de>
diff --git a/camlibs/spca504_flash/library.c b/camlibs/spca504_flash/library.c
index 8f2c3879e..64613dd71 100644
--- a/camlibs/spca504_flash/library.c
+++ b/camlibs/spca504_flash/library.c
@@ -63,7 +63,8 @@ struct models
models[] =
{
{"Aiptek Pencam", 0x04fc, 0x504a, 0},
- {"Medion MD 5319", 0x04fc, 0x504a, 0}
+ {"Medion MD 5319", 0x04fc, 0x504a, 0},
+ {"nisis Quickpix Qp3", 0x04fc, 0x504a, 0}
, {
NULL, 0, 0, 0}
};
diff --git a/camlibs/spca504_flash/spca504_flash.c b/camlibs/spca504_flash/spca504_flash.c
index ed5f9339b..8b5a2c996 100644
--- a/camlibs/spca504_flash/spca504_flash.c
+++ b/camlibs/spca504_flash/spca504_flash.c
@@ -353,7 +353,11 @@ spca504_flash_init (GPPort *port, GPContext *context)
CHECK (gp_port_usb_msg_write (port, 0x00, 0x0000, 0x2306, NULL, 0x00));
CHECK (gp_port_usb_msg_write (port, 0x08, 0x0000, 0x0006, NULL, 0x00));
- /* Read the same thing thrice, for whatever reason */
+ /* Read the same thing thrice, for whatever reason.
+ * From working on getting iso traffic working with this chip, I've found
+ * out, that 0x01, 0x0000, 0x0001 polls the chip for completion of a
+ * command. Unfortunately it is of yet unclear, what the exact procedure
+ * is. Until we know, let's keep this here. */
CHECK (gp_port_usb_msg_read (port, 0x01, 0x0000, 0x0001, bytes, 0x01));
CHECK (gp_port_usb_msg_read (port, 0x01, 0x0000, 0x0001, bytes, 0x01));
CHECK (gp_port_usb_msg_read (port, 0x01, 0x0000, 0x0001, bytes, 0x01));
diff --git a/camlibs/spca504_flash/spca504_flash.h b/camlibs/spca504_flash/spca504_flash.h
index 8ef8558eb..b60c7b794 100644
--- a/camlibs/spca504_flash/spca504_flash.h
+++ b/camlibs/spca504_flash/spca504_flash.h
@@ -25,8 +25,8 @@
struct _CameraPrivateLibrary
{
GPPort *gpdev;
- int dirty;
u_int8_t *toc;
+ int dirty :1;
};