[Scummvm-cvs-logs] SF.net SVN: scummvm:[43662] scummvm/trunk/backends/platform/wince/CEScaler. cpp
robinwatts at users.sourceforge.net
robinwatts at users.sourceforge.net
Sun Aug 23 01:00:08 CEST 2009
Revision: 43662
http://scummvm.svn.sourceforge.net/scummvm/?rev=43662&view=rev
Author: robinwatts
Date: 2009-08-22 23:00:08 +0000 (Sat, 22 Aug 2009)
Log Message:
-----------
Eliminate more warnings for buildbot.
Modified Paths:
--------------
scummvm/trunk/backends/platform/wince/CEScaler.cpp
Modified: scummvm/trunk/backends/platform/wince/CEScaler.cpp
===================================================================
--- scummvm/trunk/backends/platform/wince/CEScaler.cpp 2009-08-22 22:41:31 UTC (rev 43661)
+++ scummvm/trunk/backends/platform/wince/CEScaler.cpp 2009-08-22 23:00:08 UTC (rev 43662)
@@ -27,24 +27,25 @@
template<int bitFormat>
void PocketPCPortraitTemplate(const uint8 *srcPtr, uint32 srcPitch, uint8 *dstPtr, uint32 dstPitch, int width, int height) {
- uint8 *work;
+ uint16 *work;
+ // Various casts below go via (void *) to avoid warning. This is
+ // safe as these are all even addresses.
while (height--) {
- work = dstPtr;
+ work = (uint16 *)(void *)dstPtr;
for (int i=0; i<width; i+=4) {
// Work with 4 pixels
- // Cast via (void *) to avoid warning. This is safe.
uint16 color1 = *(((const uint16 *)(const void *)srcPtr) + i);
uint16 color2 = *(((const uint16 *)(const void *)srcPtr) + (i + 1));
uint16 color3 = *(((const uint16 *)(const void *)srcPtr) + (i + 2));
uint16 color4 = *(((const uint16 *)(const void *)srcPtr) + (i + 3));
- *(((uint16 *)work) + 0) = interpolate32_3_1<bitFormat>(color1, color2);
- *(((uint16 *)work) + 1) = interpolate32_1_1<bitFormat>(color2, color3);
- *(((uint16 *)work) + 2) = interpolate32_3_1<bitFormat>(color4, color3);
+ work[0] = interpolate32_3_1<bitFormat>(color1, color2);
+ work[1] = interpolate32_1_1<bitFormat>(color2, color3);
+ work[2] = interpolate32_3_1<bitFormat>(color4, color3);
- work += 3 * sizeof(uint16);
+ work += 3;
}
srcPtr += srcPitch;
dstPtr += dstPitch;
@@ -161,20 +162,20 @@
template<int bitFormat>
void PocketPCHalfZoomTemplate(const uint8 *srcPtr, uint32 srcPitch, uint8 *dstPtr, uint32 dstPitch, int width, int height) {
- uint8 *work;
+ uint16 *work;
if (!height)
return;
+ // Various casts below go via (void *) to avoid warning. This is
+ // safe as these are all even addresses.
while (height--) {
- work = dstPtr;
+ work = (uint16 *)(void *)dstPtr;
for (int i = 0; i < width; i += 2) {
- uint16 color1 = *(((const uint16 *)srcPtr) + i);
- uint16 color2 = *(((const uint16 *)srcPtr) + (i + 1));
- *(((uint16 *)work) + 0) = interpolate32_1_1<bitFormat>(color1, color2);
-
- work += sizeof(uint16);
+ uint16 color1 = *(((const uint16 *)(const void *)srcPtr) + i);
+ uint16 color2 = *(((const uint16 *)(const void *)srcPtr) + (i + 1));
+ *work++ = interpolate32_1_1<bitFormat>(color1, color2);
}
srcPtr += srcPitch;
dstPtr += dstPitch;
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list