[Scummvm-cvs-logs] scummvm master -> 71bdb86e028db9556611f88b3686ce93312a8131

lordhoto lordhoto at gmail.com
Sun May 1 16:57:12 CEST 2011


This automated email contains information about 1 new commit which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
71bdb86e02 Merge pull request #16 "Add a PixelFormat to Graphics::Surface.".


Commit: 71bdb86e028db9556611f88b3686ce93312a8131
    https://github.com/scummvm/scummvm/commit/71bdb86e028db9556611f88b3686ce93312a8131
Author: Johannes Schickel (lordhoto at scummvm.org)
Date: 2011-05-01T07:54:45-07:00

Commit Message:
Merge pull request #16 "Add a PixelFormat to Graphics::Surface.".

For further discussion check here:
https://github.com/scummvm/scummvm/pull/16

Conflicts:
	graphics/png.cpp

Changed paths:
    backends/graphics/opengl/opengl-graphics.cpp
    backends/graphics/sdl/sdl-graphics.cpp
    backends/platform/android/gfx.cpp
    backends/platform/android/texture.cpp
    backends/platform/dc/display.cpp
    backends/platform/ds/arm9/source/osystem_ds.cpp
    backends/platform/iphone/osys_video.cpp
    backends/platform/n64/osys_n64_base.cpp
    backends/platform/ps2/Gs2dScreen.cpp
    backends/platform/ps2/systemps2.cpp
    backends/platform/psp/default_display_client.cpp
    backends/platform/wii/osystem_gfx.cpp
    backends/vkeybd/virtual-keyboard-gui.cpp
    engines/agos/agos.cpp
    engines/draci/surface.cpp
    engines/gob/videoplayer.cpp
    engines/groovie/graphics.cpp
    engines/groovie/roq.cpp
    engines/hugo/dialogs.cpp
    engines/hugo/intro.cpp
    engines/lastexpress/data/animation.cpp
    engines/lastexpress/data/sequence.cpp
    engines/lastexpress/graphics.cpp
    engines/m4/dialogs.cpp
    engines/m4/graphics.cpp
    engines/m4/graphics.h
    engines/made/pmvplayer.cpp
    engines/made/resource.cpp
    engines/made/screen.cpp
    engines/mohawk/bitmap.cpp
    engines/mohawk/cursors.cpp
    engines/mohawk/graphics.cpp
    engines/mohawk/video.cpp
    engines/parallaction/balloons.cpp
    engines/parallaction/disk.cpp
    engines/parallaction/disk_br.cpp
    engines/parallaction/disk_ns.cpp
    engines/parallaction/graphics.cpp
    engines/parallaction/gui_br.cpp
    engines/parallaction/gui_ns.cpp
    engines/parallaction/input.cpp
    engines/parallaction/inventory.cpp
    engines/saga/gfx.cpp
    engines/saga/render.cpp
    engines/sci/video/robot_decoder.cpp
    engines/sci/video/seq_decoder.cpp
    engines/scumm/charset.cpp
    engines/scumm/cursor.cpp
    engines/scumm/gfx.cpp
    engines/scumm/gfx.h
    engines/scumm/gfx_towns.cpp
    engines/scumm/scumm.cpp
    engines/sword25/fmv/movieplayer.cpp
    engines/sword25/fmv/theora_decoder.cpp
    engines/sword25/gfx/graphicengine.cpp
    engines/sword25/gfx/image/renderedimage.cpp
    engines/sword25/gfx/screenshot.cpp
    engines/teenagent/scene.cpp
    engines/teenagent/surface.cpp
    engines/tinsel/tinsel.cpp
    engines/toon/movie.cpp
    engines/toon/toon.cpp
    engines/tsage/graphics.cpp
    graphics/VectorRendererSpec.cpp
    graphics/font.cpp
    graphics/fonts/scummfont.cpp
    graphics/fonts/winfont.cpp
    graphics/iff.cpp
    graphics/imagedec.cpp
    graphics/jpeg.cpp
    graphics/pict.cpp
    graphics/png.cpp
    graphics/scaler/thumbnail_intern.cpp
    graphics/sjis.cpp
    graphics/surface.cpp
    graphics/surface.h
    graphics/thumbnail.cpp
    gui/ThemeEngine.cpp
    gui/widget.cpp
    video/codecs/cdtoons.cpp
    video/codecs/cinepak.cpp
    video/codecs/indeo3.cpp
    video/codecs/mjpeg.cpp
    video/codecs/msrle.cpp
    video/codecs/msvideo1.cpp
    video/codecs/qtrle.cpp
    video/codecs/rpza.cpp
    video/codecs/smc.cpp
    video/codecs/truemotion1.cpp
    video/coktel_decoder.cpp
    video/dxa_decoder.cpp
    video/flic_decoder.cpp
    video/qt_decoder.cpp
    video/smk_decoder.cpp



diff --cc graphics/png.cpp
index 46e3c25,5a2cd16..3cdb9f7
--- a/graphics/png.cpp
+++ b/graphics/png.cpp
@@@ -128,43 -127,41 +128,43 @@@ Graphics::Surface *PNG::getSurface(cons
  
  		for (uint16 i = 0; i < output->h; i++) {
  			for (uint16 j = 0; j < output->w; j++) {
 -				if (format.bytesPerPixel == 2) {
 +				if (format.bytesPerPixel == 2) {	// 2bpp
 +					uint16 *dest = ((uint16 *)output->getBasePtr(j, i));
- 					if (_unfilteredSurface->bytesPerPixel == 1) {		// Grayscale
+ 					if (_unfilteredSurface->format.bytesPerPixel == 1) {		// Grayscale
  						if (_transparentColorSpecified)
  							a = (src[0] == _transparentColor[0]) ? 0 : 0xFF;
 -						*((uint16 *)output->getBasePtr(j, i)) = format.ARGBToColor(    a, src[0], src[0], src[0]);
 +						*dest = format.ARGBToColor(    a, src[0], src[0], src[0]);
- 					} else if (_unfilteredSurface->bytesPerPixel == 2) {	// Grayscale + alpha
+ 					} else if (_unfilteredSurface->format.bytesPerPixel == 2) {	// Grayscale + alpha
 -						*((uint16 *)output->getBasePtr(j, i)) = format.ARGBToColor(src[1], src[0], src[0], src[0]);
 +						*dest = format.ARGBToColor(src[1], src[0], src[0], src[0]);
- 					} else if (_unfilteredSurface->bytesPerPixel == 3) {	// RGB
+ 					} else if (_unfilteredSurface->format.bytesPerPixel == 3) {	// RGB
  						if (_transparentColorSpecified) {
  							bool isTransparentColor = (src[0] == _transparentColor[0] &&
  													   src[1] == _transparentColor[1] &&
  													   src[2] == _transparentColor[2]);
  							a = isTransparentColor ? 0 : 0xFF;
  						}
 -						*((uint16 *)output->getBasePtr(j, i)) = format.ARGBToColor(     a, src[0], src[1], src[2]);
 +						*dest = format.ARGBToColor(     a, src[0], src[1], src[2]);
- 					} else if (_unfilteredSurface->bytesPerPixel == 4) {	// RGBA
+ 					} else if (_unfilteredSurface->format.bytesPerPixel == 4) {	// RGBA
 -						*((uint16 *)output->getBasePtr(j, i)) = format.ARGBToColor(src[3], src[0], src[1], src[2]);
 +						*dest = format.ARGBToColor(src[3], src[0], src[1], src[2]);
  					}
 -				} else {
 +				} else {	// 4bpp
 +					uint32 *dest = ((uint32 *)output->getBasePtr(j, i));
- 					if (_unfilteredSurface->bytesPerPixel == 1) {		// Grayscale
+ 					if (_unfilteredSurface->format.bytesPerPixel == 1) {		// Grayscale
  						if (_transparentColorSpecified)
  							a = (src[0] == _transparentColor[0]) ? 0 : 0xFF;
 -						*((uint32 *)output->getBasePtr(j, i)) = format.ARGBToColor(     a, src[0], src[0], src[0]);
 +						*dest = format.ARGBToColor(     a, src[0], src[0], src[0]);
- 					} else if (_unfilteredSurface->bytesPerPixel == 2) {	// Grayscale + alpha
+ 					} else if (_unfilteredSurface->format.bytesPerPixel == 2) {	// Grayscale + alpha
 -						*((uint32 *)output->getBasePtr(j, i)) = format.ARGBToColor(src[1], src[0], src[0], src[0]);
 +						*dest = format.ARGBToColor(src[1], src[0], src[0], src[0]);
- 					} else if (_unfilteredSurface->bytesPerPixel == 3) {	// RGB
+ 					} else if (_unfilteredSurface->format.bytesPerPixel == 3) {	// RGB
  						if (_transparentColorSpecified) {
  							bool isTransparentColor = (src[0] == _transparentColor[0] &&
  													   src[1] == _transparentColor[1] &&
  													   src[2] == _transparentColor[2]);
  							a = isTransparentColor ? 0 : 0xFF;
  						}
 -						*((uint32 *)output->getBasePtr(j, i)) = format.ARGBToColor(     a, src[0], src[1], src[2]);
 +						*dest = format.ARGBToColor(     a, src[0], src[1], src[2]);
- 					} else if (_unfilteredSurface->bytesPerPixel == 4) {	// RGBA
+ 					} else if (_unfilteredSurface->format.bytesPerPixel == 4) {	// RGBA
 -						*((uint32 *)output->getBasePtr(j, i)) = format.ARGBToColor(src[3], src[0], src[1], src[2]);
 +						*dest = format.ARGBToColor(src[3], src[0], src[1], src[2]);
  					}
  				}
  
diff --cc graphics/surface.h
index 92c7b7e,283577a..1b54690
--- a/graphics/surface.h
+++ b/graphics/surface.h
@@@ -26,11 -26,10 +26,13 @@@
  #define GRAPHICS_SURFACE_H
  
  #include "common/scummsys.h"
 -#include "common/rect.h"
 +
 +namespace Common {
 +struct Rect;
 +}
  
+ #include "graphics/pixelformat.h"
+ 
  namespace Graphics {
  
  /**






More information about the Scummvm-git-logs mailing list