diff options
author | Paweł Kołodziejski | 2009-11-09 14:43:05 +0000 |
---|---|---|
committer | Paweł Kołodziejski | 2009-11-09 14:43:05 +0000 |
commit | 4c2491df3b843948af9be61fa75dbbe8c0bc6043 (patch) | |
tree | 27698b0cc1bf79bad7f7d122f666524aa96aa2e8 | |
parent | 9290966e273330799d3d483fd23bbc3cdca1e443 (diff) | |
download | scummvm-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.cpp | 8 | ||||
-rw-r--r-- | backends/saves/posix/posix-saves.cpp | 4 | ||||
-rw-r--r-- | common/util.cpp | 5 | ||||
-rwxr-xr-x | configure | 33 |
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 } @@ -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`" |