[Scummvm-cvs-logs] SF.net SVN: scummvm:[48186] scummvm/trunk
fingolfin at users.sourceforge.net
fingolfin at users.sourceforge.net
Mon Mar 8 11:29:00 CET 2010
Revision: 48186
http://scummvm.svn.sourceforge.net/scummvm/?rev=48186&view=rev
Author: fingolfin
Date: 2010-03-08 10:29:00 +0000 (Mon, 08 Mar 2010)
Log Message:
-----------
Move some aspect ratio related stuff to graphics/scaler/aspect.h
Modified Paths:
--------------
scummvm/trunk/backends/platform/gp2x/events.cpp
scummvm/trunk/backends/platform/gp2x/graphics.cpp
scummvm/trunk/backends/platform/gp2xwiz/gp2xwiz-graphics.cpp
scummvm/trunk/backends/platform/linuxmoto/linuxmoto-events.cpp
scummvm/trunk/backends/platform/linuxmoto/linuxmoto-graphics.cpp
scummvm/trunk/backends/platform/sdl/events.cpp
scummvm/trunk/backends/platform/sdl/graphics.cpp
scummvm/trunk/backends/platform/sdl/sdl.h
scummvm/trunk/graphics/scaler/aspect.cpp
scummvm/trunk/graphics/scaler.cpp
scummvm/trunk/graphics/scaler.h
Added Paths:
-----------
scummvm/trunk/graphics/scaler/aspect.h
Modified: scummvm/trunk/backends/platform/gp2x/events.cpp
===================================================================
--- scummvm/trunk/backends/platform/gp2x/events.cpp 2010-03-08 10:28:14 UTC (rev 48185)
+++ scummvm/trunk/backends/platform/gp2x/events.cpp 2010-03-08 10:29:00 UTC (rev 48186)
@@ -33,6 +33,7 @@
#include "backends/keymapper/keymapper.h"
#include "common/util.h"
#include "common/events.h"
+#include "graphics/scaler/aspect.h" // for aspect2Real
// FIXME move joystick defines out and replace with confile file options
// we should really allow users to map any key to a joystick button using the keymapper.
Modified: scummvm/trunk/backends/platform/gp2x/graphics.cpp
===================================================================
--- scummvm/trunk/backends/platform/gp2x/graphics.cpp 2010-03-08 10:28:14 UTC (rev 48185)
+++ scummvm/trunk/backends/platform/gp2x/graphics.cpp 2010-03-08 10:29:00 UTC (rev 48186)
@@ -34,6 +34,7 @@
#include "graphics/font.h"
#include "graphics/fontman.h"
#include "graphics/scaler.h"
+#include "graphics/scaler/aspect.h"
#include "graphics/surface.h"
static const OSystem::GraphicsMode s_supportedGraphicsModes[] = {
Modified: scummvm/trunk/backends/platform/gp2xwiz/gp2xwiz-graphics.cpp
===================================================================
--- scummvm/trunk/backends/platform/gp2xwiz/gp2xwiz-graphics.cpp 2010-03-08 10:28:14 UTC (rev 48185)
+++ scummvm/trunk/backends/platform/gp2xwiz/gp2xwiz-graphics.cpp 2010-03-08 10:29:00 UTC (rev 48186)
@@ -29,6 +29,7 @@
#include "graphics/font.h"
#include "graphics/fontman.h"
#include "graphics/scaler.h"
+#include "graphics/scaler/aspect.h"
#include "graphics/scaler/downscaler.h"
#include "graphics/surface.h"
Modified: scummvm/trunk/backends/platform/linuxmoto/linuxmoto-events.cpp
===================================================================
--- scummvm/trunk/backends/platform/linuxmoto/linuxmoto-events.cpp 2010-03-08 10:28:14 UTC (rev 48185)
+++ scummvm/trunk/backends/platform/linuxmoto/linuxmoto-events.cpp 2010-03-08 10:29:00 UTC (rev 48186)
@@ -24,7 +24,7 @@
*/
#include "backends/platform/linuxmoto/linuxmoto-sdl.h"
-#include "backends/platform/sdl/sdl.h"
+#include "graphics/scaler/aspect.h" // for aspect2Real
static int mapKey(SDLKey key, SDLMod mod, Uint16 unicode) {
if (key >= SDLK_F1 && key <= SDLK_F9) {
Modified: scummvm/trunk/backends/platform/linuxmoto/linuxmoto-graphics.cpp
===================================================================
--- scummvm/trunk/backends/platform/linuxmoto/linuxmoto-graphics.cpp 2010-03-08 10:28:14 UTC (rev 48185)
+++ scummvm/trunk/backends/platform/linuxmoto/linuxmoto-graphics.cpp 2010-03-08 10:29:00 UTC (rev 48186)
@@ -29,6 +29,7 @@
#include "graphics/font.h"
#include "graphics/fontman.h"
#include "graphics/scaler.h"
+#include "graphics/scaler/aspect.h"
#include "graphics/scaler/downscaler.h"
#include "graphics/surface.h"
Modified: scummvm/trunk/backends/platform/sdl/events.cpp
===================================================================
--- scummvm/trunk/backends/platform/sdl/events.cpp 2010-03-08 10:28:14 UTC (rev 48185)
+++ scummvm/trunk/backends/platform/sdl/events.cpp 2010-03-08 10:29:00 UTC (rev 48186)
@@ -26,6 +26,7 @@
#include "backends/platform/sdl/sdl.h"
#include "common/util.h"
#include "common/events.h"
+#include "graphics/scaler/aspect.h" // for aspect2Real
// FIXME move joystick defines out and replace with confile file options
// we should really allow users to map any key to a joystick button
Modified: scummvm/trunk/backends/platform/sdl/graphics.cpp
===================================================================
--- scummvm/trunk/backends/platform/sdl/graphics.cpp 2010-03-08 10:28:14 UTC (rev 48185)
+++ scummvm/trunk/backends/platform/sdl/graphics.cpp 2010-03-08 10:29:00 UTC (rev 48186)
@@ -32,6 +32,7 @@
#include "graphics/font.h"
#include "graphics/fontman.h"
#include "graphics/scaler.h"
+#include "graphics/scaler/aspect.h"
#include "graphics/surface.h"
static const OSystem::GraphicsMode s_supportedGraphicsModes[] = {
@@ -476,6 +477,12 @@
_dirtyChecksums = (uint32 *)calloc(_cksumNum * 2, sizeof(uint32));
}
+int OSystem_SDL::effectiveScreenHeight() const {
+ return _videoMode.scaleFactor *
+ (_videoMode.aspectRatioCorrection
+ ? real2Aspect(_videoMode.screenHeight)
+ : _videoMode.screenHeight);
+}
static void fixupResolutionForAspectRatio(AspectRatio desiredAspectRatio, int &width, int &height) {
assert(&width != &height);
Modified: scummvm/trunk/backends/platform/sdl/sdl.h
===================================================================
--- scummvm/trunk/backends/platform/sdl/sdl.h 2010-03-08 10:28:14 UTC (rev 48185)
+++ scummvm/trunk/backends/platform/sdl/sdl.h 2010-03-08 10:29:00 UTC (rev 48186)
@@ -485,10 +485,7 @@
virtual bool saveScreenshot(const char *filename); // overloaded by CE backend
- int effectiveScreenHeight() const {
- return (_videoMode.aspectRatioCorrection ? real2Aspect(_videoMode.screenHeight) : _videoMode.screenHeight)
- * _videoMode.scaleFactor;
- }
+ int effectiveScreenHeight() const;
void setupIcon();
void handleKbdMouse();
Modified: scummvm/trunk/graphics/scaler/aspect.cpp
===================================================================
--- scummvm/trunk/graphics/scaler/aspect.cpp 2010-03-08 10:28:14 UTC (rev 48185)
+++ scummvm/trunk/graphics/scaler/aspect.cpp 2010-03-08 10:29:00 UTC (rev 48186)
@@ -24,7 +24,7 @@
*/
#include "graphics/scaler/intern.h"
-#include "graphics/scaler.h"
+#include "graphics/scaler/aspect.h"
#define kVeryFastAndUglyAspectMode 0 // No interpolation at all, but super-fast
Added: scummvm/trunk/graphics/scaler/aspect.h
===================================================================
--- scummvm/trunk/graphics/scaler/aspect.h (rev 0)
+++ scummvm/trunk/graphics/scaler/aspect.h 2010-03-08 10:29:00 UTC (rev 48186)
@@ -0,0 +1,63 @@
+/* ScummVM - Graphic Adventure Engine
+ *
+ * ScummVM is the legal property of its developers, whose names
+ * are too numerous to list here. Please refer to the COPYRIGHT
+ * file distributed with this source distribution.
+ *
+ * This program is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU General Public License
+ * as published by the Free Software Foundation; either version 2
+ * of the License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with this program; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+ *
+ * $URL$
+ * $Id$
+ */
+
+#ifndef GRAPHICS_SCALER_ASPECT_H
+#define GRAPHICS_SCALER_ASPECT_H
+
+#include "common/scummsys.h"
+
+/**
+ * TODO: explain
+ */
+FORCEINLINE int real2Aspect(int y) {
+ return y + (y + 1) / 5;
+}
+
+/**
+ * TODO: explain
+ */
+FORCEINLINE int aspect2Real(int y) {
+ return (y * 5 + 4) / 6;
+}
+
+/**
+ * TODO: explain
+ */
+void makeRectStretchable(int &x, int &y, int &w, int &h);
+
+/**
+ * TODO: explain
+ */
+int stretch200To240(uint8 *buf,
+ uint32 pitch,
+ int width,
+ int height,
+ int srcX,
+ int srcY,
+ int origSrcY);
+
+// TODO: Move Normal2xAspect & PocketPCLandscapeAspect here;
+// also rename the latter to Normal1xAspect
+
+#endif
Property changes on: scummvm/trunk/graphics/scaler/aspect.h
___________________________________________________________________
Added: svn:mime-type
+ text/plain
Added: svn:keywords
+ Date Rev Author URL Id
Added: svn:eol-style
+ native
Modified: scummvm/trunk/graphics/scaler.cpp
===================================================================
--- scummvm/trunk/graphics/scaler.cpp 2010-03-08 10:28:14 UTC (rev 48185)
+++ scummvm/trunk/graphics/scaler.cpp 2010-03-08 10:29:00 UTC (rev 48186)
@@ -184,9 +184,8 @@
/**
* A 2x scaler which also does aspect ratio correction.
- * Presumably this is Normal2x combined with vertical
- * stretching, so it will scale a 320x200 surface to
- * a 640x480 surface.
+ * This is Normal2x combined with vertical stretching,
+ * so it will scale a 320x200 surface to a 640x480 surface.
*/
void Normal2xAspect(const uint8 *srcPtr,
uint32 srcPitch,
Modified: scummvm/trunk/graphics/scaler.h
===================================================================
--- scummvm/trunk/graphics/scaler.h 2010-03-08 10:28:14 UTC (rev 48185)
+++ scummvm/trunk/graphics/scaler.h 2010-03-08 10:29:00 UTC (rev 48186)
@@ -58,18 +58,6 @@
DECLARE_SCALER(HQ3x);
#endif
-FORCEINLINE int real2Aspect(int y) {
- return y + (y + 1) / 5;
-}
-
-FORCEINLINE int aspect2Real(int y) {
- return (y * 5 + 4) / 6;
-}
-
-extern void makeRectStretchable(int &x, int &y, int &w, int &h);
-
-extern int stretch200To240(uint8 *buf, uint32 pitch, int width, int height, int srcX, int srcY, int origSrcY);
-
// creates a 160x100 thumbnail for 320x200 games
// and 160x120 thumbnail for 320x240 and 640x480 games
// only 565 mode
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