aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaweł Kołodziejski2009-11-09 14:43:05 +0000
committerPaweł Kołodziejski2009-11-09 14:43:05 +0000
commit4c2491df3b843948af9be61fa75dbbe8c0bc6043 (patch)
tree27698b0cc1bf79bad7f7d122f666524aa96aa2e8
parent9290966e273330799d3d483fd23bbc3cdca1e443 (diff)
downloadscummvm-rg350-4c2491df3b843948af9be61fa75dbbe8c0bc6043.tar.gz
scummvm-rg350-4c2491df3b843948af9be61fa75dbbe8c0bc6043.tar.bz2
scummvm-rg350-4c2491df3b843948af9be61fa75dbbe8c0bc6043.zip
added support for samsung tv
svn-id: r45777
-rw-r--r--backends/base-backend.cpp8
-rw-r--r--backends/saves/posix/posix-saves.cpp4
-rw-r--r--common/util.cpp5
-rwxr-xr-xconfigure33
4 files changed, 48 insertions, 2 deletions
diff --git a/backends/base-backend.cpp b/backends/base-backend.cpp
index 92194c6d32..a87352b9bc 100644
--- a/backends/base-backend.cpp
+++ b/backends/base-backend.cpp
@@ -60,8 +60,14 @@ void BaseBackend::fillScreen(uint32 col) {
#if defined(UNIX)
-#define DEFAULT_CONFIG_FILE ".scummvmrc"
+#if defined(SAMSUNGTV)
+#define DEFAULT_CONFIG_FILE "/dtv/usb/sda1/.scummvmrc"
+#endif
#else
+#define DEFAULT_CONFIG_FILE ".scummvmrc"
+#endif
+
+#if !defined(UNIX)
#define DEFAULT_CONFIG_FILE "scummvm.ini"
#endif
diff --git a/backends/saves/posix/posix-saves.cpp b/backends/saves/posix/posix-saves.cpp
index 0827575edf..5b13513bcb 100644
--- a/backends/saves/posix/posix-saves.cpp
+++ b/backends/saves/posix/posix-saves.cpp
@@ -44,6 +44,9 @@
POSIXSaveFileManager::POSIXSaveFileManager() {
// Register default savepath based on HOME
+#if defined(SAMSUNGTV)
+ ConfMan.registerDefault("savepath", "/dtv/usb/sda1/.scummvm");
+#else
Common::String savePath;
const char *home = getenv("HOME");
if (home && *home && strlen(home) < MAXPATHLEN) {
@@ -51,6 +54,7 @@ POSIXSaveFileManager::POSIXSaveFileManager() {
savePath += "/" DEFAULT_SAVE_PATH;
ConfMan.registerDefault("savepath", savePath);
}
+#endif
}
/*
POSIXSaveFileManager::POSIXSaveFileManager(const Common::String &defaultSavepath)
diff --git a/common/util.cpp b/common/util.cpp
index a0144868db..c16e774e43 100644
--- a/common/util.cpp
+++ b/common/util.cpp
@@ -531,5 +531,10 @@ void NORETURN error(const char *s, ...) {
if (g_system)
g_system->quit();
+#if defined(SAMSUNGTV)
+ // FIXME
+ for (;;) {}
+#else
exit(1);
+#endif
}
diff --git a/configure b/configure
index 0afd637377..0c47e3c058 100755
--- a/configure
+++ b/configure
@@ -834,6 +834,11 @@ motomagx)
_host_cpu=arm
_host_alias=arm-linux-gnueabi
;;
+samsungtv)
+ _host_os=linux
+ _host_cpu=arm
+ _host_alias=arm-SamyGO-linux-gnueabi
+ ;;
arm-riscos)
_host_os=riscos
_host_cpu=arm
@@ -1337,6 +1342,24 @@ if test -n "$_host"; then
add_line_to_config_mk 'USE_ARM_SOUND_ASM = 1'
add_line_to_config_mk 'USE_ARM_SMUSH_ASM = 1'
;;
+ samsungtv)
+ DEFINES="$DEFINES -DUNIX -DSAMSUNGTV -DDISABLE_TEXT_CONSOLE -DDISABLE_COMMAND_LINE -DENABLE_32BIT"
+ ASFLAGS="$ASFLAGS -mfpu=vfp"
+ HOSTEXEEXT=".so"
+ _need_memalign=yes
+ add_line_to_config_mk 'USE_ARM_SOUND_ASM = 1'
+ add_line_to_config_mk 'USE_ARM_SMUSH_ASM = 1'
+ add_line_to_config_mk 'USE_ARM_GFX_ASM = 1'
+ add_line_to_config_mk 'USE_ARM_COSTUME_ASM = 1'
+ add_line_to_config_mk 'USE_ARM_SCALER_ASM = 1'
+ _backend="samsungtv"
+ _build_hq_scalers="no"
+ _mt32emu="no"
+ _build_hq_scalers="no"
+ _build_scalers="yes"
+ _vkeybd="yes"
+ _keymapper="yes"
+ ;;
motoezx)
DEFINES="$DEFINES -DUNIX -DMOTOEZX"
ASFLAGS="$ASFLAGS -mfpu=vfp"
@@ -1607,7 +1630,7 @@ fi
# Enable 16bit support only for backends which support it
#
case $_backend in
- sdl | wii | dreamcast)
+ sdl | wii | dreamcast | samsungtv)
if test "$_16bit" = auto ; then
_16bit=yes
else
@@ -2230,6 +2253,14 @@ case $_backend in
LIBS="$LIBS `$_sdlconfig --prefix="$_sdlpath" --libs`"
DEFINES="$DEFINES -DSDL_BACKEND -DLINUXMOTO"
;;
+ samsungtv)
+ _sdlconfig="arm-SamyGO-linux-gnueabi-sdl-config"
+ find_sdlconfig
+ INCLUDES="$INCLUDES `$_sdlconfig --cflags`"
+ LIBS="$LIBS `$_sdlconfig --libs`"
+ DEFINES="$DEFINES -DSDL_BACKEND -DSAMSUNGTV"
+ LDFLAGS="$LDFLAGS -shared -fpic -Wl,-whole-archive"
+ ;;
gp2x)
find_sdlconfig
INCLUDES="$INCLUDES `$_sdlconfig --prefix="$_sdlpath" --cflags`"