From eeab2bb3bf2b014cdc2a87824dcecc93f341e11c Mon Sep 17 00:00:00 2001 From: James Brown Date: Fri, 16 Jan 2004 16:28:56 +0000 Subject: Hack for Launcher Scaler dropdown. Backends using the Launcher will need to implement the OSystem HAS_SCALER property. The global options dialog still needs doing. svn-id: r12436 --- base/gameDetector.h | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) (limited to 'base/gameDetector.h') diff --git a/base/gameDetector.h b/base/gameDetector.h index 9f1dc089ac..c5dfee405c 100644 --- a/base/gameDetector.h +++ b/base/gameDetector.h @@ -24,6 +24,7 @@ #define GAMEDETECTOR_H #include "common/str.h" +#include "common/scaler.h" class Engine; class GameDetector; @@ -54,6 +55,43 @@ struct GameSettings { uint32 features; }; +struct GraphicsMode { + const char *name; + const char *description; + int id; +}; + +/** + * List of graphic 'modes' we potentially support. Potentially because not all + * backends actually support all the filters listed here. At this point only + * the SDL backend supports all (except for the PalmOS ones of course). + * @todo Remove this explicit list of graphic modes and rather extend the + * OSystem API to allow querying a backend for the modes it supports. + */ +static const struct GraphicsMode gfx_modes[] = { + {"normal", "Normal (no scaling)", GFX_NORMAL}, + {"1x", "Normal (no scaling)", GFX_NORMAL}, +#ifndef __PALM_OS__ // reduce contant data size + {"2x", "2x", GFX_DOUBLESIZE}, + {"3x", "3x", GFX_TRIPLESIZE}, + {"2xsai", "2xSAI", GFX_2XSAI}, + {"super2xsai", "Super2xSAI", GFX_SUPER2XSAI}, + {"supereagle", "SuperEagle", GFX_SUPEREAGLE}, + {"advmame2x", "AdvMAME2x", GFX_ADVMAME2X}, + {"advmame3x", "AdvMAME3x", GFX_ADVMAME3X}, + {"hq2x", "HQ2x", GFX_HQ2X}, + {"hq3x", "HQ3x", GFX_HQ3X}, + {"tv2x", "TV2x", GFX_TV2X}, + {"dotmatrix", "DotMatrix", GFX_DOTMATRIX}, +#else + {"flipping", "Page Flipping", GFX_FLIPPING}, + {"buffered", "Buffered", GFX_BUFFERED}, + {"wide", "Wide (HiRes+ only)", GFX_WIDE}, +#endif + {0, 0, 0} +}; + + class GameDetector { typedef Common::String String; -- cgit v1.2.3