From 7f9b7c46467ae18e2948ca7ebe5aeaf03fabc27f Mon Sep 17 00:00:00 2001 From: Oliver Schwartz Date: Mon, 15 Aug 2005 18:56:55 +0000 Subject: [PATCH] Added temporary debug code for 2480/2580 distinction --- ChangeLog | 6 ++++++ backend/snapscan-scsi.c | 38 ++++++++++++++++++++++++++++++++++++-- backend/snapscan.c | 5 ++++- 3 files changed, 46 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index dba80a6e3..167cd153e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2005-08-15 Oliver Schwartz + + * backend/snapscan.c: Bumped version number + * backend/snapscan-scsi.c: Added temporary debug code for 2480/2580 + distinction + 2005-08-15 Oliver Schwartz * backend/snapscan.c backend/snapscan-options.c backend/snapscan-scsi.c diff --git a/backend/snapscan-scsi.c b/backend/snapscan-scsi.c index 768d773a7..0ea4e1048 100644 --- a/backend/snapscan-scsi.c +++ b/backend/snapscan-scsi.c @@ -414,12 +414,38 @@ static SANE_Status mini_inquiry (SnapScan_Bus bus, int fd, char *vendor, char *m return SANE_STATUS_GOOD; } +/* TODO: Remove */ +static char *snapscani_debug_data(char *str,const char *data, int len) { + char tmpstr[10]; + int i; + + str[0]=0; + for(i=0; i < (len < 20 ? len : 20); i++) { + sprintf(tmpstr," 0x%02x",((int)data[i]) & 0xff); + if(i%16 == 0 && i != 0) + strcat(str,"\n"); + strcat(str,tmpstr); + } + if(i < len) + strcat(str," ..."); + return str; +} + static SANE_Status inquiry (SnapScan_Scanner *pss) { static const char *me = "inquiry"; - + char tmpstr[150]; /* TODO: Remove */ SANE_Status status; - pss->read_bytes = INQUIRY_RET_LEN; + switch (pss->pdev->model) + { + case PERFECTION2480: + case PERFECTION3490: + pss->read_bytes = 138; + break; + default: + pss->read_bytes = INQUIRY_RET_LEN; + break; + } zero_buf (pss->cmd, MAX_SCSI_CMD_LEN); pss->cmd[0] = INQUIRY; @@ -453,6 +479,11 @@ static SANE_Status inquiry (SnapScan_Scanner *pss) pss->chroma_offset[B_CHAN] = 0; pss->chroma = 0; break; + case PERFECTION2480: + case PERFECTION3590: + /* TODO: remove */ + snapscani_debug_data(tmpstr, pss->buf+120, 18); + DBG (DL_DATA_TRACE, "%s: Epson additional inquiry data:\n%s\n", me, tmpstr); default: { signed char min_diff; @@ -1389,6 +1420,9 @@ static SANE_Status download_firmware(SnapScan_Scanner * pss) /* * $Log$ + * Revision 1.34 2005/08/15 18:56:55 oliver-guest + * Added temporary debug code for 2480/2580 distinction + * * Revision 1.33 2005/08/15 18:06:37 oliver-guest * Added support for Epson 3490/3590 (thanks to Matt Judge) * diff --git a/backend/snapscan.c b/backend/snapscan.c index 0a2c4e4dd..21aa1c41d 100644 --- a/backend/snapscan.c +++ b/backend/snapscan.c @@ -79,7 +79,7 @@ #define EXPECTED_MAJOR 1 #define MINOR_VERSION 4 -#define BUILD 42 +#define BUILD 43 #define BACKEND_NAME snapscan @@ -1871,6 +1871,9 @@ SANE_Status sane_get_select_fd (SANE_Handle h, SANE_Int * fd) /* * $Log$ + * Revision 1.51 2005/08/15 18:56:55 oliver-guest + * Added temporary debug code for 2480/2580 distinction + * * Revision 1.50 2005/08/15 18:06:37 oliver-guest * Added support for Epson 3490/3590 (thanks to Matt Judge) *