kopia lustrzana https://gitlab.com/sane-project/backends
Fixed ARM/Xscale issues
rodzic
bbc271977b
commit
9e4caebcc2
|
@ -1085,7 +1085,7 @@ usbDev_startScan( Plustek_Device *dev )
|
|||
scan->sParam.PhyDpi.y = usb_SetAsicDpiY(dev,scan->sParam.UserDpi.y);
|
||||
|
||||
/* Allocate shading/scan buffer */
|
||||
scan->pScanBuffer = (u_char*)malloc( _SCANBUF_SIZE );
|
||||
scan->pScanBuffer = (u_long*)malloc( _SCANBUF_SIZE );
|
||||
|
||||
if( scan->pScanBuffer == NULL )
|
||||
return _E_ALLOC;
|
||||
|
@ -1198,7 +1198,7 @@ usbDev_Prepare( Plustek_Device *dev, SANE_Byte *buf )
|
|||
}
|
||||
}
|
||||
|
||||
scan->pbScanBufBegin = scan->pScanBuffer;
|
||||
scan->pbScanBufBegin = (u_char*)scan->pScanBuffer;
|
||||
|
||||
if((dev->caps.dwFlag & SFLAG_ADF) && (scaps->OpticDpi.x == 600))
|
||||
scan->dwLinesScanBuf = 8;
|
||||
|
|
|
@ -125,45 +125,51 @@
|
|||
#define _HIBYTE(x) ((u_char)((x) >> 8))
|
||||
|
||||
#define _HILO2WORD(x) ((u_short)x.bHi * 256U + x.bLo)
|
||||
#define _LOHI2WORD(x) ((u_short)x.bLo * 256U + x.bHi)
|
||||
|
||||
#define _PHILO2WORD(x) ((u_short)x->bHi * 256U + x->bLo)
|
||||
#define _PLOHI2WORD(x) ((u_short)x->bLo * 256U + x->bHi)
|
||||
|
||||
#define PACKED8 __attribute__ ((packed,aligned(1)))
|
||||
#define PACKED16 __attribute__ ((packed,aligned(2)))
|
||||
|
||||
/* useful for RGB-values */
|
||||
typedef struct __attribute__ ((__packed__)) {
|
||||
typedef struct {
|
||||
u_char Red;
|
||||
u_char Green;
|
||||
u_char Blue;
|
||||
} RGBByteDef;
|
||||
} PACKED8 RGBByteDef;
|
||||
|
||||
typedef struct __attribute__ ((__packed__)) {
|
||||
typedef struct {
|
||||
u_short Red;
|
||||
u_short Green;
|
||||
u_short Blue;
|
||||
} RGBUShortDef;
|
||||
} PACKED16 RGBUShortDef;
|
||||
|
||||
typedef struct __attribute__ ((__packed__)) {
|
||||
typedef struct {
|
||||
u_long Red;
|
||||
u_long Green;
|
||||
u_long Blue;
|
||||
} RGBULongDef;
|
||||
|
||||
typedef struct __attribute__ ((__packed__)) {
|
||||
typedef struct {
|
||||
u_char a_bColor[3];
|
||||
} ColorByteDef;
|
||||
} PACKED8 ColorByteDef;
|
||||
|
||||
typedef struct __attribute__ ((__packed__)) {
|
||||
typedef struct {
|
||||
u_char bHi;
|
||||
u_char bLo;
|
||||
} HiLoDef;
|
||||
} PACKED8 HiLoDef;
|
||||
|
||||
typedef union __attribute__ ((__packed__)) {
|
||||
typedef union {
|
||||
HiLoDef HiLo[3];
|
||||
u_short Colors[3];
|
||||
} ColorWordDef;
|
||||
} PACKED16 ColorWordDef;
|
||||
|
||||
typedef union __attribute__ ((__packed__)) {
|
||||
typedef union {
|
||||
HiLoDef HiLo;
|
||||
u_short Mono;
|
||||
} MonoWordDef;
|
||||
} PACKED16 MonoWordDef;
|
||||
|
||||
typedef union {
|
||||
|
||||
|
@ -176,7 +182,7 @@ typedef union {
|
|||
RGBUShortDef *pw_rgb;
|
||||
HiLoDef *philo;
|
||||
|
||||
} AnyPtr;
|
||||
} __attribute__ ((aligned(4))) AnyPtr;
|
||||
|
||||
typedef struct {
|
||||
unsigned short x;
|
||||
|
@ -629,7 +635,7 @@ typedef struct ScanDef
|
|||
/** Image processing routine according to the scan mode */
|
||||
void (*pfnProcess)(struct Plustek_Device*);
|
||||
|
||||
u_char* pScanBuffer; /**< our scan buffer */
|
||||
u_long* pScanBuffer; /**< our scan buffer */
|
||||
|
||||
u_long dwLinesPerScanBufs;
|
||||
u_long dwNumberOfScanBufs;
|
||||
|
|
|
@ -261,7 +261,7 @@ cano_AdjustLightsource( Plustek_Device *dev )
|
|||
int res_r, res_g, res_b;
|
||||
u_long dw, dwR, dwG, dwB, dwDiv, dwLoop1, dwLoop2;
|
||||
RGBUShortDef max_rgb, min_rgb, tmp_rgb;
|
||||
u_char *scanbuf = dev->scanning.pScanBuffer;
|
||||
u_long *scanbuf = dev->scanning.pScanBuffer;
|
||||
DCapsDef *scaps = &dev->usbDev.Caps;
|
||||
HWDef *hw = &dev->usbDev.HwSetting;
|
||||
|
||||
|
@ -337,16 +337,16 @@ cano_AdjustLightsource( Plustek_Device *dev )
|
|||
|
||||
sprintf( tmp, "coarse-lamp-%u.raw", i );
|
||||
|
||||
dumpPicInit( &m_ScanParam, tmp );
|
||||
dumpPic( tmp, scanbuf, m_ScanParam.Size.dwPhyBytes );
|
||||
dumpPicInit(&m_ScanParam, tmp);
|
||||
dumpPic(tmp, (u_char*)scanbuf, m_ScanParam.Size.dwPhyBytes, 0);
|
||||
|
||||
if(usb_HostSwap())
|
||||
usb_Swap((u_short *)scanbuf, m_ScanParam.Size.dwPhyBytes );
|
||||
|
||||
sprintf( tmp, "coarse-lamp-swap%u.raw", i );
|
||||
|
||||
dumpPicInit( &m_ScanParam, tmp );
|
||||
dumpPic( tmp, scanbuf, m_ScanParam.Size.dwPhyBytes );
|
||||
dumpPicInit(&m_ScanParam, tmp);
|
||||
dumpPic(tmp, (u_char*)scanbuf, m_ScanParam.Size.dwPhyBytes, 0);
|
||||
|
||||
dwDiv = 10;
|
||||
dwLoop1 = m_ScanParam.Size.dwPhyPixels/dwDiv;
|
||||
|
@ -512,7 +512,7 @@ cano_AdjustGain( Plustek_Device *dev )
|
|||
char tmp[40];
|
||||
int i = 0, adj = 1;
|
||||
u_long dw;
|
||||
u_char *scanbuf = dev->scanning.pScanBuffer;
|
||||
u_long *scanbuf = dev->scanning.pScanBuffer;
|
||||
DCapsDef *scaps = &dev->usbDev.Caps;
|
||||
HWDef *hw = &dev->usbDev.HwSetting;
|
||||
|
||||
|
@ -579,8 +579,8 @@ cano_AdjustGain( Plustek_Device *dev )
|
|||
|
||||
sprintf( tmp, "coarse-gain-%u.raw", i++ );
|
||||
|
||||
dumpPicInit( &m_ScanParam, tmp );
|
||||
dumpPic( tmp, scanbuf, m_ScanParam.Size.dwPhyBytes );
|
||||
dumpPicInit(&m_ScanParam, tmp);
|
||||
dumpPic(tmp, (u_char*)scanbuf, m_ScanParam.Size.dwPhyBytes, 0);
|
||||
|
||||
if(usb_HostSwap())
|
||||
usb_Swap((u_short *)scanbuf, m_ScanParam.Size.dwPhyBytes );
|
||||
|
@ -761,7 +761,7 @@ cano_AdjustOffset( Plustek_Device *dev )
|
|||
signed char now[3] = { 0, 0, 0 };
|
||||
signed char high[3] = { 31, 31, 31 };
|
||||
|
||||
u_char *scanbuf = dev->scanning.pScanBuffer;
|
||||
u_long *scanbuf = dev->scanning.pScanBuffer;
|
||||
HWDef *hw = &dev->usbDev.HwSetting;
|
||||
DCapsDef *scaps = &dev->usbDev.Caps;
|
||||
|
||||
|
@ -823,8 +823,8 @@ cano_AdjustOffset( Plustek_Device *dev )
|
|||
|
||||
sprintf( tmp, "coarse-off-%u.raw", i );
|
||||
|
||||
dumpPicInit( &m_ScanParam, tmp );
|
||||
dumpPic( tmp, scanbuf, m_ScanParam.Size.dwPhyBytes );
|
||||
dumpPicInit(&m_ScanParam, tmp);
|
||||
dumpPic(tmp, (u_char*)scanbuf, m_ScanParam.Size.dwPhyBytes, 0);
|
||||
|
||||
if(usb_HostSwap())
|
||||
usb_Swap((u_short *)scanbuf, m_ScanParam.Size.dwPhyBytes );
|
||||
|
@ -945,7 +945,7 @@ cano_AdjustDarkShading( Plustek_Device *dev, u_short cal_dpi )
|
|||
char tmp[40];
|
||||
ScanParam *param = &dev->scanning.sParam;
|
||||
ScanDef *scan = &dev->scanning;
|
||||
u_char *scanbuf = scan->pScanBuffer;
|
||||
u_long *scanbuf = scan->pScanBuffer;
|
||||
u_short *bufp;
|
||||
unsigned int i, j;
|
||||
int step, stepW, val;
|
||||
|
@ -959,13 +959,13 @@ cano_AdjustDarkShading( Plustek_Device *dev, u_short cal_dpi )
|
|||
m_ScanParam.bCalibration = PARAM_DarkShading;
|
||||
|
||||
sprintf( tmp, "fine-dark.raw" );
|
||||
dumpPicInit( &m_ScanParam, tmp );
|
||||
dumpPicInit(&m_ScanParam, tmp);
|
||||
|
||||
usb_SetScanParameters( dev, &m_ScanParam );
|
||||
if( usb_ScanBegin( dev, SANE_FALSE ) &&
|
||||
usb_ScanReadImage( dev, scanbuf, m_ScanParam.Size.dwTotalBytes)) {
|
||||
|
||||
dumpPic( tmp, scanbuf, m_ScanParam.Size.dwTotalBytes );
|
||||
dumpPic(tmp, (u_char*)scanbuf, m_ScanParam.Size.dwTotalBytes, 0);
|
||||
|
||||
if(usb_HostSwap())
|
||||
usb_Swap((u_short *)scanbuf, m_ScanParam.Size.dwTotalBytes);
|
||||
|
@ -1073,7 +1073,7 @@ cano_AdjustWhiteShading( Plustek_Device *dev, u_short cal_dpi )
|
|||
char tmp[40];
|
||||
ScanParam *param = &dev->scanning.sParam;
|
||||
ScanDef *scan = &dev->scanning;
|
||||
u_char *scanbuf = scan->pScanBuffer;
|
||||
u_long *scanbuf = scan->pScanBuffer;
|
||||
u_short *bufp;
|
||||
unsigned int i, j;
|
||||
int step, stepW;
|
||||
|
@ -1092,13 +1092,13 @@ cano_AdjustWhiteShading( Plustek_Device *dev, u_short cal_dpi )
|
|||
DBG( _DBG_INFO2, "Pixels = %lu\n", m_ScanParam.Size.dwPixels );
|
||||
DBG( _DBG_INFO2, "Bytes = %lu\n", m_ScanParam.Size.dwBytes );
|
||||
DBG( _DBG_INFO2, "Origin.X = %u\n", m_ScanParam.Origin.x );
|
||||
dumpPicInit( &m_ScanParam, tmp );
|
||||
dumpPicInit(&m_ScanParam, tmp);
|
||||
|
||||
if( usb_SetScanParameters( dev, &m_ScanParam ) &&
|
||||
usb_ScanBegin( dev, SANE_FALSE ) &&
|
||||
usb_ScanReadImage( dev, scanbuf, m_ScanParam.Size.dwTotalBytes)) {
|
||||
|
||||
dumpPic( tmp, scanbuf, m_ScanParam.Size.dwTotalBytes );
|
||||
dumpPic(tmp, (u_char*)scanbuf, m_ScanParam.Size.dwTotalBytes, 0);
|
||||
|
||||
if(usb_HostSwap())
|
||||
usb_Swap((u_short *)scanbuf, m_ScanParam.Size.dwTotalBytes);
|
||||
|
|
|
@ -767,7 +767,7 @@ static void usb_GrayDuplicate16( Plustek_Device *dev )
|
|||
if( swap )
|
||||
*dest = (_PHILO2WORD(pwm)) >> ls;
|
||||
else
|
||||
*dest = *((u_short*)pwm) >> ls;
|
||||
*dest = (_PLOHI2WORD(pwm)) >> ls;
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1643,7 +1643,7 @@ static void usb_GrayScale16( Plustek_Device *dev )
|
|||
if( swap )
|
||||
*dest = _PHILO2WORD(pwm) >> ls;
|
||||
else
|
||||
*dest = *((u_short*)pwm) >> ls;
|
||||
*dest = _PLOHI2WORD(pwm) >> ls;
|
||||
|
||||
dest += next;
|
||||
ddax += izoom;
|
||||
|
@ -1949,7 +1949,7 @@ static SANE_Int usb_ReadData( Plustek_Device *dev )
|
|||
|
||||
if( usb_ScanReadImage( dev, scan->pbGetDataBuf, dw )) {
|
||||
|
||||
dumpPic( "plustek-pic.raw", scan->pbGetDataBuf, dw );
|
||||
dumpPic("plustek-pic.raw", scan->pbGetDataBuf, dw, 0);
|
||||
|
||||
if( scan->dwLinesDiscard ) {
|
||||
|
||||
|
|
|
@ -97,9 +97,10 @@ static PicDef dPix;
|
|||
|
||||
/**
|
||||
*/
|
||||
static void dumpPic( char* name, SANE_Byte *buffer, u_long len )
|
||||
static void dumpPic( char* name, SANE_Byte *buffer, u_long len, int is_gray )
|
||||
{
|
||||
FILE *fp;
|
||||
u_short type;
|
||||
FILE *fp;
|
||||
|
||||
if( DBG_LEVEL < _DBG_DPIC )
|
||||
return;
|
||||
|
@ -114,12 +115,17 @@ static void dumpPic( char* name, SANE_Byte *buffer, u_long len )
|
|||
|
||||
if( 0 != dPix.x ) {
|
||||
|
||||
if (is_gray)
|
||||
type = 5;
|
||||
else
|
||||
type = 6;
|
||||
|
||||
DBG( _DBG_DPIC, "> X=%lu, Y=%lu, depth=%u\n",
|
||||
dPix.x, dPix.y, dPix.depth );
|
||||
if( dPix.depth > 8 )
|
||||
fprintf( fp, "P6\n%lu %lu\n65535\n", dPix.x, dPix.y );
|
||||
fprintf( fp, "P%u\n%lu %lu\n65535\n", type, dPix.x, dPix.y);
|
||||
else
|
||||
fprintf( fp, "P6\n%lu %lu\n255\n", dPix.x, dPix.y );
|
||||
fprintf( fp, "P%u\n%lu %lu\n255\n", type, dPix.x, dPix.y);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
@ -150,7 +156,10 @@ static void dumpPicInit( ScanParam *sd, char* name )
|
|||
dPix.y = sd->Size.dwLines;
|
||||
dPix.depth = sd->bBitDepth;
|
||||
|
||||
dumpPic( name, NULL, 0 );
|
||||
if( sd->bDataType == SCANDATATYPE_Color )
|
||||
dumpPic(name, NULL, 0, 0);
|
||||
else
|
||||
dumpPic(name, NULL, 0, 1);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -783,7 +783,7 @@ static SANE_Bool usb_AdjustGain( Plustek_Device *dev, int fNegative )
|
|||
ScanDef *scanning = &dev->scanning;
|
||||
DCapsDef *scaps = &dev->usbDev.Caps;
|
||||
HWDef *hw = &dev->usbDev.HwSetting;
|
||||
u_char *scanbuf = scanning->pScanBuffer;
|
||||
u_long *scanbuf = scanning->pScanBuffer;
|
||||
u_char *regs = dev->usbDev.a_bRegs;
|
||||
u_long dw, start, end, len;
|
||||
SANE_Bool fRepeatITA = SANE_TRUE;
|
||||
|
@ -868,8 +868,8 @@ TOGAIN:
|
|||
|
||||
sprintf( tmp, "coarse-gain-%u.raw", i++ );
|
||||
|
||||
dumpPicInit( &m_ScanParam, tmp );
|
||||
dumpPic( tmp, scanbuf, m_ScanParam.Size.dwPhyBytes );
|
||||
dumpPicInit(&m_ScanParam, tmp);
|
||||
dumpPic(tmp, (u_char*)scanbuf, m_ScanParam.Size.dwPhyBytes, 0);
|
||||
|
||||
#ifdef SWAP_COARSE
|
||||
if(usb_HostSwap())
|
||||
|
@ -1257,7 +1257,7 @@ static SANE_Bool usb_AdjustOffset( Plustek_Device *dev )
|
|||
|
||||
HWDef *hw = &dev->usbDev.HwSetting;
|
||||
u_char *regs = dev->usbDev.a_bRegs;
|
||||
u_char *scanbuf = dev->scanning.pScanBuffer;
|
||||
u_long *scanbuf = dev->scanning.pScanBuffer;
|
||||
|
||||
if( usb_IsEscPressed())
|
||||
return SANE_FALSE;
|
||||
|
@ -1354,8 +1354,8 @@ static SANE_Bool usb_AdjustOffset( Plustek_Device *dev )
|
|||
if(usb_HostSwap())
|
||||
usb_Swap((u_short *)scanbuf, m_ScanParam.Size.dwPhyBytes );
|
||||
#endif
|
||||
dumpPicInit( &m_ScanParam, tmp );
|
||||
dumpPic( tmp, scanbuf, m_ScanParam.Size.dwPhyBytes );
|
||||
dumpPicInit(&m_ScanParam, tmp);
|
||||
dumpPic(tmp, (u_char*)scanbuf, m_ScanParam.Size.dwPhyBytes, 0);
|
||||
|
||||
if( m_ScanParam.bDataType == SCANDATATYPE_Color ) {
|
||||
|
||||
|
@ -1467,7 +1467,7 @@ static void usb_GetDarkShading( Plustek_Device *dev, u_short *pwDest,
|
|||
#ifndef SWAP_FINE
|
||||
wtmp = ((int)_PHILO2WORD(pSrce) + iOffset);
|
||||
#else
|
||||
wtmp = (*((int*)pSrce) + iOffset);
|
||||
wtmp = ((int)_PLOHI2WORD(pSrce) + iOffset);
|
||||
#endif
|
||||
if( wtmp < 0 )
|
||||
wtmp = 0;
|
||||
|
@ -1494,7 +1494,7 @@ static void usb_GetDarkShading( Plustek_Device *dev, u_short *pwDest,
|
|||
#ifndef SWAP_FINE
|
||||
dwSum[dw & 1] += (u_long)_PHILO2WORD(pSrce);
|
||||
#else
|
||||
dwSum[dw & 1] += (u_long)(*(u_short*)pSrce);
|
||||
dwSum[dw & 1] += (u_long)_PLOHI2WORD(pSrce);
|
||||
#endif
|
||||
}
|
||||
dwSum[0] /= ((dwPixels + 1UL) >> 1);
|
||||
|
@ -1534,7 +1534,7 @@ static void usb_GetDarkShading( Plustek_Device *dev, u_short *pwDest,
|
|||
#ifndef SWAP_FINE
|
||||
dwSum[0] += (u_long)_PHILO2WORD(pSrce);
|
||||
#else
|
||||
dwSum[0] += (u_long)(*(u_short*)pSrce);
|
||||
dwSum[0] += (u_long)_PLOHI2WORD(pSrce);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
@ -1574,7 +1574,7 @@ static SANE_Bool usb_AdjustDarkShading( Plustek_Device *dev )
|
|||
ScanDef *scanning = &dev->scanning;
|
||||
DCapsDef *scaps = &dev->usbDev.Caps;
|
||||
HWDef *hw = &dev->usbDev.HwSetting;
|
||||
u_char *scanbuf = scanning->pScanBuffer;
|
||||
u_long *scanbuf = scanning->pScanBuffer;
|
||||
u_char *regs = dev->usbDev.a_bRegs;
|
||||
|
||||
if( usb_IsEscPressed())
|
||||
|
@ -1660,8 +1660,8 @@ static SANE_Bool usb_AdjustDarkShading( Plustek_Device *dev )
|
|||
|
||||
sprintf( tmp, "fine-black.raw" );
|
||||
|
||||
dumpPicInit( &m_ScanParam, tmp );
|
||||
dumpPic( tmp, scanbuf, m_ScanParam.Size.dwPhyBytes );
|
||||
dumpPicInit(&m_ScanParam, tmp);
|
||||
dumpPic(tmp, (u_char*)scanbuf, m_ScanParam.Size.dwPhyBytes, 0);
|
||||
|
||||
usleep(500 * 1000); /* Warm up lamp again */
|
||||
|
||||
|
@ -1817,7 +1817,7 @@ static void usb_procHighlightAndShadow( Plustek_Device *dev, ScanParam *sp,
|
|||
u_long *pr, *pg, *pb;
|
||||
RGBUShortDef *rgb;
|
||||
|
||||
pr = (u_long*)(scan->pScanBuffer + sp->Size.dwPhyBytes * shading_lines);
|
||||
pr = (u_long*)((u_char*)scan->pScanBuffer + sp->Size.dwPhyBytes * shading_lines);
|
||||
pg = pr + sp->Size.dwPhyPixels;
|
||||
pb = pg + sp->Size.dwPhyPixels;
|
||||
|
||||
|
@ -1855,7 +1855,7 @@ static SANE_Bool usb_AdjustWhiteShading( Plustek_Device *dev )
|
|||
ScanDef *scan = &dev->scanning;
|
||||
DCapsDef *scaps = &dev->usbDev.Caps;
|
||||
HWDef *hw = &dev->usbDev.HwSetting;
|
||||
u_char *pBuf = scan->pScanBuffer;
|
||||
u_long *pBuf = scan->pScanBuffer;
|
||||
u_long dw, dwLines, dwRead;
|
||||
u_long shading_lines;
|
||||
MonoWordDef *pValue;
|
||||
|
@ -1940,7 +1940,7 @@ static SANE_Bool usb_AdjustWhiteShading( Plustek_Device *dev )
|
|||
usleep(900000);
|
||||
}
|
||||
|
||||
if( usb_ScanReadImage( dev, pBuf + dwRead,
|
||||
if( usb_ScanReadImage( dev, (u_char*)pBuf + dwRead,
|
||||
m_ScanParam.Size.dwTotalBytes)) {
|
||||
|
||||
if( _LM9831 == hw->chip ) {
|
||||
|
@ -1949,10 +1949,10 @@ static SANE_Bool usb_AdjustWhiteShading( Plustek_Device *dev )
|
|||
}
|
||||
|
||||
if( 0 == dwRead ) {
|
||||
dumpPicInit( &m_ScanParam, tmp );
|
||||
dumpPicInit(&m_ScanParam, tmp);
|
||||
}
|
||||
|
||||
dumpPic( tmp, pBuf + dwRead, m_ScanParam.Size.dwTotalBytes );
|
||||
dumpPic(tmp, (u_char*)pBuf + dwRead, m_ScanParam.Size.dwTotalBytes, 0);
|
||||
|
||||
if( usb_ScanEnd( dev )) {
|
||||
dwRead += m_ScanParam.Size.dwTotalBytes;
|
||||
|
@ -1965,7 +1965,7 @@ static SANE_Bool usb_AdjustWhiteShading( Plustek_Device *dev )
|
|||
return SANE_FALSE;
|
||||
}
|
||||
|
||||
m_pSum = (u_long*)(pBuf + m_ScanParam.Size.dwPhyBytes * shading_lines);
|
||||
m_pSum = (u_long*)((u_char*)pBuf + m_ScanParam.Size.dwPhyBytes * shading_lines);
|
||||
|
||||
/*
|
||||
* do some reordering on CIS based devices:
|
||||
|
@ -2019,11 +2019,11 @@ static SANE_Bool usb_AdjustWhiteShading( Plustek_Device *dev )
|
|||
if(usb_HostSwap()) {
|
||||
#endif
|
||||
for( dw = 0; dw < m_dwPixels * m_ScanParam.bChannels; dw++ )
|
||||
pwDest[dw] = _HILO2WORD( pwSrce[dw] );
|
||||
pwDest[dw] = _HILO2WORD(pwSrce[dw]);
|
||||
#ifdef SWAP_FINE
|
||||
} else {
|
||||
for( dw = 0; dw < m_dwPixels * m_ScanParam.bChannels; dw++ )
|
||||
pwDest[dw] = ((u_short*)pwSrce)[dw];
|
||||
pwDest[dw] = _LOHI2WORD(pwSrce[dw]);
|
||||
}
|
||||
#endif
|
||||
pwDest += (u_long)m_dwPixels * m_ScanParam.bChannels;
|
||||
|
@ -2043,13 +2043,13 @@ static SANE_Bool usb_AdjustWhiteShading( Plustek_Device *dev )
|
|||
#endif
|
||||
for( dw = 0; dw < m_ScanParam.Size.dwPhyPixels *
|
||||
m_ScanParam.bChannels; dw++) {
|
||||
pwDest[dw] = _HILO2WORD( pwSrce[dw] );
|
||||
pwDest[dw] = _HILO2WORD(pwSrce[dw]);
|
||||
}
|
||||
#ifdef SWAP_FINE
|
||||
} else {
|
||||
for( dw = 0; dw < m_ScanParam.Size.dwPhyPixels *
|
||||
m_ScanParam.bChannels; dw++) {
|
||||
pwDest[dw] = ((u_short*)pwSrce)[dw];
|
||||
pwDest[dw] = _LOHI2WORD(pwSrce[dw]);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
@ -2310,7 +2310,7 @@ usb_SpeedTest( Plustek_Device *dev )
|
|||
DCapsDef *scaps = &dev->usbDev.Caps;
|
||||
HWDef *hw = &dev->usbDev.HwSetting;
|
||||
u_char *regs = dev->usbDev.a_bRegs;
|
||||
u_char *scanbuf = dev->scanning.pScanBuffer;
|
||||
u_long *scanbuf = dev->scanning.pScanBuffer;
|
||||
|
||||
if( usb_IsEscPressed())
|
||||
return SANE_FALSE;
|
||||
|
@ -2393,7 +2393,7 @@ usb_AutoWarmup( Plustek_Device *dev )
|
|||
ScanDef *scanning = &dev->scanning;
|
||||
DCapsDef *scaps = &dev->usbDev.Caps;
|
||||
HWDef *hw = &dev->usbDev.HwSetting;
|
||||
u_char *scanbuf = scanning->pScanBuffer;
|
||||
u_long *scanbuf = scanning->pScanBuffer;
|
||||
u_char *regs = dev->usbDev.a_bRegs;
|
||||
u_long dw, start, end, len;
|
||||
u_long curR, curG, curB;
|
||||
|
|
Ładowanie…
Reference in New Issue