From 66dbb7f485899a555093e1b909d65c97589a5681 Mon Sep 17 00:00:00 2001 From: vanfanel Date: Fri, 4 Dec 2015 16:05:19 +0100 Subject: SDL/DISPMANX: Remove dispmanx graphics output. --- backends/platform/sdl/module.mk | 6 --- backends/platform/sdl/posix/posix-main.cpp | 2 +- .../platform/sdl/raspberrypi/README.RASPBERRYPI | 45 ++++--------------- .../platform/sdl/raspberrypi/raspberrypi-main.cpp | 51 ---------------------- backends/platform/sdl/raspberrypi/raspberrypi.cpp | 42 ------------------ backends/platform/sdl/raspberrypi/raspberrypi.h | 35 --------------- 6 files changed, 9 insertions(+), 172 deletions(-) delete mode 100644 backends/platform/sdl/raspberrypi/raspberrypi-main.cpp delete mode 100644 backends/platform/sdl/raspberrypi/raspberrypi.cpp delete mode 100644 backends/platform/sdl/raspberrypi/raspberrypi.h (limited to 'backends/platform') diff --git a/backends/platform/sdl/module.mk b/backends/platform/sdl/module.mk index 65d12dceed..74dd506d31 100644 --- a/backends/platform/sdl/module.mk +++ b/backends/platform/sdl/module.mk @@ -36,12 +36,6 @@ MODULE_OBJS += \ ps3/ps3.o endif -ifdef DISPMANX -MODULE_OBJS += \ - raspberrypi/raspberrypi-main.o \ - raspberrypi/raspberrypi.o -endif - # We don't use rules.mk but rather manually update OBJS and MODULE_DIRS. MODULE_OBJS := $(addprefix $(MODULE)/, $(MODULE_OBJS)) OBJS := $(MODULE_OBJS) $(OBJS) diff --git a/backends/platform/sdl/posix/posix-main.cpp b/backends/platform/sdl/posix/posix-main.cpp index 492da70eeb..d07db11b0c 100644 --- a/backends/platform/sdl/posix/posix-main.cpp +++ b/backends/platform/sdl/posix/posix-main.cpp @@ -22,7 +22,7 @@ #include "common/scummsys.h" -#if defined(POSIX) && !defined(MACOSX) && !defined(SAMSUNGTV) && !defined(MAEMO) && !defined(WEBOS) && !defined(LINUXMOTO) && !defined(GPH_DEVICE) && !defined(GP2X) && !defined(DINGUX) && !defined(OPENPANDORA) && !defined(PLAYSTATION3) && !defined(DISPMANX) +#if defined(POSIX) && !defined(MACOSX) && !defined(SAMSUNGTV) && !defined(MAEMO) && !defined(WEBOS) && !defined(LINUXMOTO) && !defined(GPH_DEVICE) && !defined(GP2X) && !defined(DINGUX) && !defined(OPENPANDORA) && !defined(PLAYSTATION3) #include "backends/platform/sdl/posix/posix.h" #include "backends/plugins/sdl/sdl-provider.h" diff --git a/backends/platform/sdl/raspberrypi/README.RASPBERRYPI b/backends/platform/sdl/raspberrypi/README.RASPBERRYPI index f8d872b519..ab0e674c31 100644 --- a/backends/platform/sdl/raspberrypi/README.RASPBERRYPI +++ b/backends/platform/sdl/raspberrypi/README.RASPBERRYPI @@ -4,12 +4,9 @@ ScummVM-RASPBERRYPI README Notes ============ -This version of ScummVM is specially tailored to use DispmanX, the native 2D -API on the Raspberry Pi. The idea is that scaling and drawing on a double -buffer with a non-blocking vsync wait is all done using the on-board VideoCore -hardware, thus using only a small fraction of the CPU ScummVM uses when ran -on a clunky, software-scaled and desynced X11 environment using the X11 API. -Thus, running this version under an X11 session is not supported. +This version of ScummVM uses SDL2 hardware accelerated graphics, be it +plain SDL2 which in turn uses dispmanx/gles2 or by using gles1 via an +SDL2-configured GLES1 context. Requirements ============ @@ -67,40 +64,14 @@ works as in any other system ScummVM runs on. Building from sources ============================== -We have two options to build once we have the sources in our main GNU/Linux desktop -class PC or in our Raspberry Pi: +Recommended method is building by cross-compiling on a GNU/Linux X86-based computer. +You can find concise instructions for this on the ScummVM wiki: -1) Building on the Raspberry Pi itself, although possible, is an SLOW task for the -little computer unless you use distributed gcc (or distcc for short). - -Local compilation would simply consist of the "standard" GNU/Linux building process: - -cd - -./configure --enable-dispmanx -disable-debug --enable-release ---enable-optimizations --disable-mt32emu --disable-flac --disable-mad --disable-vorbis ---disable-tremor --disable-fluidsynth --disable-taskbar --disable-timidity --disable-alsa ---disable-scalers --disable-hq-scalers --disable-savegame-timestamp --disable-eventrecorder - -make +http://wiki.scummvm.org/index.php/Compiling_ScummVM/RPI -As you can see, we're manually disabling scalers because we prefer dispmanx for that, which +The configure script is disabling scalers because we prefer dispmanx for that, which makes scalers unnecessary on a CPU limited platform like this, timestamps because most people doesn't have an RTC on the Raspberry Pi, and event recorder to save SD card write cycles. -All these are automatically disabled when we crosscompile by passing "--host=raspberrypi", -which is not the case. - -¡¡It will be an SLOW process, taking several hours to complete, unless you -are running distcc against a fast compilation server!! - -2) If we want to build by cross-compiling on a GNU/Linux X86-based computer, -we can find concise instructions for this can be found on the ScummVM wiki: - -http://wiki.scummvm.org/index.php/Compiling_ScummVM/RPI - -NOTE: Distcc is my preferred method as it does cross-compiling totally transparent -(we build ON the Pi but the actual CPU-intensive compilation is made on an external -server), but it involves building a custom gcc version on the compilation server and -configuring a server and client in both the Raspberry Pi and the server. +All these are automatically disabled when we crosscompile by passing "--host=raspberrypi". Enjoy! diff --git a/backends/platform/sdl/raspberrypi/raspberrypi-main.cpp b/backends/platform/sdl/raspberrypi/raspberrypi-main.cpp deleted file mode 100644 index cddbcb7ec4..0000000000 --- a/backends/platform/sdl/raspberrypi/raspberrypi-main.cpp +++ /dev/null @@ -1,51 +0,0 @@ -/* 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. - * - */ - -#include "backends/platform/sdl/raspberrypi/raspberrypi.h" -#include "backends/plugins/sdl/sdl-provider.h" -#include "common/scummsys.h" -#include "base/main.h" - -#if defined(DISPMANX) -int main(int argc, char* argv[]) { - - // Create our OSystem instance - g_system = new OSystem_SDL_RaspberryPi(); - assert(g_system); - - // Pre initialize the backend - ((OSystem_SDL_RaspberryPi *)g_system)->init(); - -#ifdef DYNAMIC_MODULES - PluginManager::instance().addPluginProvider(new SDLPluginProvider()); -#endif - - // Invoke the actual ScummVM main entry point: - int res = scummvm_main(argc, argv); - - // Free OSystem - delete (OSystem_SDL_RaspberryPi *)g_system; - - return res; -} - -#endif diff --git a/backends/platform/sdl/raspberrypi/raspberrypi.cpp b/backends/platform/sdl/raspberrypi/raspberrypi.cpp deleted file mode 100644 index 206203d82e..0000000000 --- a/backends/platform/sdl/raspberrypi/raspberrypi.cpp +++ /dev/null @@ -1,42 +0,0 @@ -/* 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. - * - */ - -#if defined(DISPMANX) - -#include "backends/platform/sdl/raspberrypi/raspberrypi.h" -#include "backends/graphics/dispmanxsdl/dispmanxsdl-graphics.h" - -void OSystem_SDL_RaspberryPi::initBackend() { - // Create the events manager - if (_eventSource == 0) - _eventSource = new SdlEventSource(); - - // Create the graphics manager - if (_graphicsManager == 0) { - _graphicsManager = new DispmanXSdlGraphicsManager(_eventSource, _window); - } - - // Call parent implementation of this method - OSystem_POSIX::initBackend(); -} - -#endif diff --git a/backends/platform/sdl/raspberrypi/raspberrypi.h b/backends/platform/sdl/raspberrypi/raspberrypi.h deleted file mode 100644 index 45e2c505f6..0000000000 --- a/backends/platform/sdl/raspberrypi/raspberrypi.h +++ /dev/null @@ -1,35 +0,0 @@ -/* 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. - * - */ - -#ifndef SDL_DISPMANX_COMMON_H -#define SDL_DISPMANX_COMMON_H - -#if defined(DISPMANX) -#include "backends/platform/sdl/posix/posix.h" - -class OSystem_SDL_RaspberryPi : public OSystem_POSIX { -public: - void initBackend(); -}; - -#endif /* DISPMANX */ -#endif /* SDL_DISPMANX_COMMON_H */ -- cgit v1.2.3