diff options
author | Paweł Kołodziejski | 2009-11-11 14:36:46 +0000 |
---|---|---|
committer | Paweł Kołodziejski | 2009-11-11 14:36:46 +0000 |
commit | 2a1cd33a46853b50dd5061a104618f00cdff01d3 (patch) | |
tree | db1ae0aebe0202013d9fd153781ffdc447e39da5 /backends/platform/samsungtv | |
parent | 22e94ddd61bbb044f99088311d53df60128bd935 (diff) | |
download | scummvm-rg350-2a1cd33a46853b50dd5061a104618f00cdff01d3.tar.gz scummvm-rg350-2a1cd33a46853b50dd5061a104618f00cdff01d3.tar.bz2 scummvm-rg350-2a1cd33a46853b50dd5061a104618f00cdff01d3.zip |
added more cases for samsungtv to allow reuse main sdl code
svn-id: r45835
Diffstat (limited to 'backends/platform/samsungtv')
-rw-r--r-- | backends/platform/samsungtv/graphics.cpp | 4 | ||||
-rw-r--r-- | backends/platform/samsungtv/sdl.cpp | 109 | ||||
-rw-r--r-- | backends/platform/samsungtv/sdl.h | 7 |
3 files changed, 0 insertions, 120 deletions
diff --git a/backends/platform/samsungtv/graphics.cpp b/backends/platform/samsungtv/graphics.cpp index 8a08f8a28e..b5bd3a993f 100644 --- a/backends/platform/samsungtv/graphics.cpp +++ b/backends/platform/samsungtv/graphics.cpp @@ -52,10 +52,6 @@ static ScalerProc *scalersMagn[3][3] = { static int cursorStretch200To240(uint8 *buf, uint32 pitch, int width, int height, int srcX, int srcY, int origSrcY); #endif -int OSystem_SDL_SamsungTV::getDefaultGraphicsMode() const { - return GFX_2XSAI; -} - Common::List<Graphics::PixelFormat> OSystem_SDL_SamsungTV::getSupportedFormats() { static Common::List<Graphics::PixelFormat>list; list.push_back(Graphics::PixelFormat(2, 5, 6, 5, 0, 11, 5, 0, 0)); diff --git a/backends/platform/samsungtv/sdl.cpp b/backends/platform/samsungtv/sdl.cpp index 099b9c9928..4515012bee 100644 --- a/backends/platform/samsungtv/sdl.cpp +++ b/backends/platform/samsungtv/sdl.cpp @@ -43,93 +43,6 @@ #if defined(SAMSUNGTV) -static Uint32 timer_handler(Uint32 interval, void *param) { - ((DefaultTimerManager *)param)->handler(); - return interval; -} - -static const size_t AR_COUNT = 4; -static const char* desiredAspectRatioAsStrings[AR_COUNT] = { "auto", "4/3", "16/9", "16/10" }; -static const AspectRatio desiredAspectRatios[AR_COUNT] = { AspectRatio(0, 0), AspectRatio(4,3), AspectRatio(16,9), AspectRatio(16,10) }; -static AspectRatio getDesiredAspectRatio() { - //TODO : We could parse an arbitrary string, if we code enough proper validation - Common::String desiredAspectRatio = ConfMan.get("desired_screen_aspect_ratio"); - - for (size_t i = 0; i < AR_COUNT; i++) { - assert(desiredAspectRatioAsStrings[i] != NULL); - - if (!scumm_stricmp(desiredAspectRatio.c_str(), desiredAspectRatioAsStrings[i])) { - return desiredAspectRatios[i]; - } - } - // TODO : Report a warning - return AspectRatio(0, 0); -} - -void OSystem_SDL_SamsungTV::initBackend() { - assert(!_inited); - - uint32 sdlFlags = SDL_INIT_VIDEO | SDL_INIT_AUDIO | SDL_INIT_TIMER; - - if (ConfMan.hasKey("disable_sdl_parachute")) - sdlFlags |= SDL_INIT_NOPARACHUTE; - - if (SDL_Init(sdlFlags) == -1) { - error("Could not initialize SDL: %s", SDL_GetError()); - } - - _graphicsMutex = createMutex(); - - // Enable unicode support if possible - SDL_EnableUNICODE(1); - - memset(&_oldVideoMode, 0, sizeof(_oldVideoMode)); - memset(&_videoMode, 0, sizeof(_videoMode)); - memset(&_transactionDetails, 0, sizeof(_transactionDetails)); - - _cksumValid = false; - _videoMode.mode = GFX_2XSAI; - _videoMode.scaleFactor = 2; - _videoMode.aspectRatioCorrection = ConfMan.getBool("aspect_ratio"); - _videoMode.desiredAspectRatio = getDesiredAspectRatio(); - _scalerProc = _2xSaI; - _scalerType = 0; - _modeFlags = 0; - _videoMode.fullscreen = true; - - - // Create the savefile manager, if none exists yet (we check for this to - // allow subclasses to provide their own). - if (_savefile == NULL) { - _savefile = new POSIXSaveFileManager(); - } - - // Create and hook up the mixer, if none exists yet (we check for this to - // allow subclasses to provide their own). - if (_mixer == NULL) { - setupMixer(); - } - - // Create and hook up the timer manager, if none exists yet (we check for - // this to allow subclasses to provide their own). - if (_timer == NULL) { - // Note: We could implement a custom SDLTimerManager by using - // SDL_AddTimer. That might yield better timer resolution, but it would - // also change the semantics of a timer: Right now, ScummVM timers - // *never* run in parallel, due to the way they are implemented. If we - // switched to SDL_AddTimer, each timer might run in a separate thread. - // However, not all our code is prepared for that, so we can't just - // switch. Still, it's a potential future change to keep in mind. - _timer = new DefaultTimerManager(); - _timerID = SDL_AddTimer(10, &timer_handler, _timer); - } - - // Invoke parent implementation of this method - OSystem::initBackend(); - - _inited = true; -} - OSystem_SDL_SamsungTV::OSystem_SDL_SamsungTV() : OSystem_SDL(), _prehwscreen(0) { } @@ -178,26 +91,4 @@ bool OSystem_SDL_SamsungTV::getFeatureState(Feature f) { } } -void OSystem_SDL_SamsungTV::quit() { - unloadGFXMode(); - deleteMutex(_graphicsMutex); - - SDL_RemoveTimer(_timerID); - closeMixer(); - - free(_dirtyChecksums); - free(_currentPalette); - free(_cursorPalette); - free(_mouseData); - - delete _timer; - - SDL_Quit(); - - // Even Manager requires save manager for storing - // recorded events - delete getEventManager(); - delete _savefile; -} - #endif diff --git a/backends/platform/samsungtv/sdl.h b/backends/platform/samsungtv/sdl.h index 5879a775c5..b01385c9aa 100644 --- a/backends/platform/samsungtv/sdl.h +++ b/backends/platform/samsungtv/sdl.h @@ -42,8 +42,6 @@ class OSystem_SDL_SamsungTV : public OSystem_SDL { public: OSystem_SDL_SamsungTV(); - virtual void initBackend(); - // Highest supported virtual Common::List<Graphics::PixelFormat> getSupportedFormats(); @@ -63,11 +61,6 @@ public: // Returns true if an event was retrieved. virtual bool pollEvent(Common::Event &event); - // Quit - virtual void quit(); // overloaded by CE backend - - virtual int getDefaultGraphicsMode() const; - virtual bool hasFeature(Feature f); virtual void setFeatureState(Feature f, bool enable); virtual bool getFeatureState(Feature f); |