diff options
author | Marcus Meissner <marcus@jet.franken.de> | 2002-05-08 06:13:47 +0000 |
---|---|---|
committer | Marcus Meissner <marcus@jet.franken.de> | 2002-05-08 06:13:47 +0000 |
commit | 0d53a3798759290c2445b09ef71c6237de4e7f64 (patch) | |
tree | f6b211d59ac6ba36ff7d87ae22a9eeed312d402d /camlibs/sonydscf55 | |
parent | cd564fc4bb9379b74977bb1c3ef15c40e214c5df (diff) | |
download | libgphoto2-0d53a3798759290c2445b09ef71c6237de4e7f64.tar.gz |
Integrated patch for more than 255 pictures in camera from
Khalid Akbar <khalid@homechoice.co.uk>.
git-svn-id: https://svn.code.sf.net/p/gphoto/code/trunk/libgphoto2@4498 67ed7778-7388-44ab-90cf-0a291f65f57c
Diffstat (limited to 'camlibs/sonydscf55')
-rw-r--r-- | camlibs/sonydscf55/ChangeLog | 4 | ||||
-rw-r--r-- | camlibs/sonydscf55/camera.c | 1 | ||||
-rw-r--r-- | camlibs/sonydscf55/sony.c | 12 | ||||
-rw-r--r-- | camlibs/sonydscf55/sony.h | 1 |
4 files changed, 12 insertions, 6 deletions
diff --git a/camlibs/sonydscf55/ChangeLog b/camlibs/sonydscf55/ChangeLog index 04438beb2..2ff3ea349 100644 --- a/camlibs/sonydscf55/ChangeLog +++ b/camlibs/sonydscf55/ChangeLog @@ -1,3 +1,7 @@ +2002-05-07 Khalid Akbar <khalid@homechoice.co.uk> + + * *.[ch]: Added support for more than 256 images and "Sony TRV-20E". + 2002-03-27 Raymond Penners <raymond@dotsphinx.com> * *.[ch]: Made driver GPContext aware (i.e., operations can now be diff --git a/camlibs/sonydscf55/camera.c b/camlibs/sonydscf55/camera.c index 3fa1f17de..7661f3327 100644 --- a/camlibs/sonydscf55/camera.c +++ b/camlibs/sonydscf55/camera.c @@ -42,6 +42,7 @@ int camera_abilities(CameraAbilitiesList * list) static const char *models[] = { SONY_MODEL_DSC_F55, SONY_MODEL_MSAC_SR1, + SONY_MODEL_TRV_20E, SONY_MODEL_DCR_PC100 }; int i; diff --git a/camlibs/sonydscf55/sony.c b/camlibs/sonydscf55/sony.c index 750b0e915..53b599c38 100644 --- a/camlibs/sonydscf55/sony.c +++ b/camlibs/sonydscf55/sony.c @@ -572,7 +572,7 @@ sony_item_count(Camera * camera, unsigned char *from, int from_len) if (rc == GP_OK) { rc = sony_converse(camera, &dp, SendImageCount, 3); if (rc == GP_OK) { - int nr = (int) dp.buffer[5]; + int nr = dp.buffer[5] | (dp.buffer[4]<<8); GP_DEBUG ("count = %d", nr); return nr; } @@ -633,8 +633,8 @@ sony_file_get(Camera * camera, int imageid, int file_type, if (file_type == SONY_FILE_THUMBNAIL) { sc = 0x247; - // FIXME - SelectImage[4] = imageid; + SelectImage[3] = (imageid >> 8); + SelectImage[4] = imageid & 0xff; sony_converse(camera, &dp, SelectImage, 7); GP_DEBUG ("XYZ %11.11s", dp.buffer + 5); @@ -665,7 +665,7 @@ sony_file_get(Camera * camera, int imageid, int file_type, } else { sc = 11; - // FIXME + SendImage[3] = (imageid >> 8); SendImage[4] = imageid; sony_converse(camera, &dp, SendImage, 7); @@ -750,8 +750,8 @@ int sony_image_info(Camera * camera, int imageid, CameraFileInfo * info, GPConte return GP_ERROR_CANCEL; } - // FIXME - SelectImage[4] = imageid; + SelectImage[3] = (imageid >> 8); + SelectImage[4] = imageid & 0xff; rc = sony_converse(camera, &dp, SelectImage, 7); if (rc == GP_OK) { l = (l << 8) | dp.buffer[16]; diff --git a/camlibs/sonydscf55/sony.h b/camlibs/sonydscf55/sony.h index e463d4878..1e72e3adc 100644 --- a/camlibs/sonydscf55/sony.h +++ b/camlibs/sonydscf55/sony.h @@ -23,6 +23,7 @@ #define SONY_CAMERA_ID "sonydscf55" #define SONY_MODEL_MSAC_SR1 "Sony MSAC-SR1" #define SONY_MODEL_DCR_PC100 "Sony DCR-PC100" +#define SONY_MODEL_TRV_20E "Sony TRV-20E" #define SONY_MODEL_DSC_F55 "Sony DSC-F55" #define SONY_FILE_NAME_FMT "dsc%05d.jpg" |