added workaround for +1 scanline size in 16bit mode
This commit is contained in:
parent
144a2762ad
commit
48dfe1eec3
|
@ -484,7 +484,15 @@ void Direct3DDisplay::render()
|
|||
return;
|
||||
} else {
|
||||
if( !theApp.filterFunction ) {
|
||||
copyImage( pix, lr.pBits, theApp.sizeX, theApp.sizeY, lr.Pitch, systemColorDepth );
|
||||
copyImage(
|
||||
pix,
|
||||
lr.pBits,
|
||||
(systemColorDepth == 32) ? theApp.sizeX
|
||||
: theApp.sizeX + 1, // TODO: workaround results in one pixel black border at right side
|
||||
theApp.sizeY,
|
||||
lr.Pitch,
|
||||
systemColorDepth
|
||||
);
|
||||
} else {
|
||||
u32 pitch = theApp.filterWidth * (systemColorDepth>>3) + 4;
|
||||
theApp.filterFunction( pix + pitch,
|
||||
|
|
|
@ -721,6 +721,9 @@ void DirectDrawDisplay::render()
|
|||
copyX = 160;
|
||||
copyY = 144;
|
||||
}
|
||||
}
|
||||
if( systemColorDepth == 16 ) {
|
||||
copyX++; // TODO: workaround results in one pixel black border at right side
|
||||
}
|
||||
copyImage( pix, ddsDesc.lpSurface, copyX, copyY, ddsDesc.lPitch, systemColorDepth );
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue