This is an automated email from the git hooks/post-receive script. ecsv-guest pushed a commit to branch armhf_test in repository mupen64plus-ui-console.
commit 5f0e5218225fbf3c07776627ec41f31ad046ee4d Author: Sven Eckelmann <[email protected]> Date: Mon Feb 15 13:10:43 2010 +0100 Imported Upstream version 1.99.3 --- .hg_archival.txt | 2 - .hgtags | 1 - README | 1 + RELEASE | 8 ++ doc/mupen64plus.6.gz | Bin 1799 -> 2394 bytes projects/msvc8/mupen64plus-ui-console.vcproj | 4 +- projects/unix/Makefile | 5 +- src/core_interface.c | 3 + src/core_interface.h | 1 + src/main.c | 110 ++++++++++++++-- src/osal_files_win32.c | 182 +++++++++++++-------------- src/osal_preproc.h | 5 +- src/version.h | 2 +- 13 files changed, 215 insertions(+), 109 deletions(-) diff --git a/.hg_archival.txt b/.hg_archival.txt deleted file mode 100644 index 66b0e31..0000000 --- a/.hg_archival.txt +++ /dev/null @@ -1,2 +0,0 @@ -repo: 55709704bf013181159184b83e0ab909c7d458be -node: 8cf91241c3d4eff6b5fa8fa8f13fcc5e5cc4a89f diff --git a/.hgtags b/.hgtags deleted file mode 100644 index 0d88bdb..0000000 --- a/.hgtags +++ /dev/null @@ -1 +0,0 @@ -9c6059a764e244625ac7c8196616d8c6cd8347bf 1.99.1 diff --git a/README b/README index 84171d1..84a7043 100644 --- a/README +++ b/README @@ -30,6 +30,7 @@ Parameters: --rsp (plugin-spec) : use rsp plugin given by (plugin-spec) --emumode (mode) : set emu mode to: 0=Pure Interpreter 1=Interpreter 2=DynaRec --testshots (list) : take screenshots at frames given in comma-separated (list), then quit + --set (param-spec) : set a configuration variable, format: ParamSection[ParamName]=Value --core-compare-send : use the Core Comparison debugging feature, in data sending mode --core-compare-recv : use the Core Comparison debugging feature, in data receiving mode --saveoptions : save the given command-line options in configuration file for future diff --git a/RELEASE b/RELEASE index 5274d0b..eee6eb9 100644 --- a/RELEASE +++ b/RELEASE @@ -1,6 +1,14 @@ Mupen64Plus-UI-Console RELEASE ------------------------------ +Mupen64Plus-UI-Console Front-End v1.99.3 - February 13, 2010 +------------------------------------------------------------ + - New feature: command-line option --set for setting arbitrary configuration variables + - updated MAN pgae for all the changes made in the 2.0 re-architecture + - Makefile improvements: + - added OS type GNU/kFreeBSD + - add -lpthread to LIBS so that GDB will run the emulator without throwing a warning right after starting + Mupen64Plus-UI-Console Front-End v1.99.2 - January 6, 2010 ------------------------------------------------------------ - new feature: added MSVC8 project/solution files, minor refactoring for VC compatibility diff --git a/doc/mupen64plus.6.gz b/doc/mupen64plus.6.gz index cb95d25..de859a9 100644 Binary files a/doc/mupen64plus.6.gz and b/doc/mupen64plus.6.gz differ diff --git a/projects/msvc8/mupen64plus-ui-console.vcproj b/projects/msvc8/mupen64plus-ui-console.vcproj index 0702fa9..09cb69b 100644 --- a/projects/msvc8/mupen64plus-ui-console.vcproj +++ b/projects/msvc8/mupen64plus-ui-console.vcproj @@ -92,7 +92,7 @@ <Tool Name="VCPostBuildEventTool" Description="Copying shared data and libraries to build directory..." - CommandLine="copy ..\..\..\mupen64plus-core\data\* "$(OutDir)"
copy ..\..\..\mupen64plus-video-rice\data\* "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\freetype-2.3.5-1\bin\*.dll "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\libpng-1.2.37\bin\*.dll "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\SDL-1.2.14\lib\*.dll "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\zlib-1.2 [...] + CommandLine="copy ..\..\..\mupen64plus-core\data\* "$(OutDir)"
copy ..\..\..\mupen64plus-video-rice\data\* "$(OutDir)"
copy ..\..\..\mupen64plus-input-sdl\data\* "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\freetype-2.3.5-1\bin\*.dll "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\libpng-1.2.37\bin\*.dll "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\SDL-1.2.14\lib\*.dll &q [...] /> </Configuration> <Configuration @@ -172,7 +172,7 @@ <Tool Name="VCPostBuildEventTool" Description="Copying shared data and libraries to build directory..." - CommandLine="copy ..\..\..\mupen64plus-core\data\* "$(OutDir)"
copy ..\..\..\mupen64plus-video-rice\data\* "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\freetype-2.3.5-1\bin\*.dll "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\libpng-1.2.37\bin\*.dll "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\SDL-1.2.14\lib\*.dll "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\zlib-1.2 [...] + CommandLine="copy ..\..\..\mupen64plus-core\data\* "$(OutDir)"
copy ..\..\..\mupen64plus-video-rice\data\* "$(OutDir)"
copy ..\..\..\mupen64plus-input-sdl\data\* "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\freetype-2.3.5-1\bin\*.dll "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\libpng-1.2.37\bin\*.dll "$(OutDir)"
copy ..\..\..\mupen64plus-win32-deps\SDL-1.2.14\lib\*.dll &q [...] /> </Configuration> </Configurations> diff --git a/projects/unix/Makefile b/projects/unix/Makefile index e5b2669..0bcae24 100644 --- a/projects/unix/Makefile +++ b/projects/unix/Makefile @@ -35,6 +35,9 @@ endif ifeq ("$(UNAME)","FreeBSD") OS = FREEBSD endif +ifeq ("$(UNAME)","GNU/kFreeBSD") + OS = FREEBSD +endif ifeq ("$(OS)","NONE") $(error OS type "$(UNAME)" not supported. Please file bug report at 'http://code.google.com/p/mupen64plus/issues') endif @@ -70,7 +73,7 @@ endif # base CFLAGS, LIBS, and LDFLAGS CFLAGS = -ffast-math -funroll-loops -fexpensive-optimizations -fno-strict-aliasing -I../../src -LDFLAGS = -ldl +LDFLAGS = -ldl -lpthread # set special flags per-system ifeq ($(OS), LINUX) diff --git a/src/core_interface.c b/src/core_interface.c index 1cc28ce..5726399 100644 --- a/src/core_interface.c +++ b/src/core_interface.c @@ -59,6 +59,7 @@ ptr_ConfigListParameters ConfigListParameters = NULL; ptr_ConfigSaveFile ConfigSaveFile = NULL; ptr_ConfigSetParameter ConfigSetParameter = NULL; ptr_ConfigGetParameter ConfigGetParameter = NULL; +ptr_ConfigGetParameterType ConfigGetParameterType = NULL; ptr_ConfigGetParameterHelp ConfigGetParameterHelp = NULL; ptr_ConfigSetDefaultInt ConfigSetDefaultInt = NULL; ptr_ConfigSetDefaultFloat ConfigSetDefaultFloat = NULL; @@ -201,6 +202,7 @@ m64p_error AttachCoreLib(const char *CoreLibFilepath) ConfigSaveFile = (ptr_ConfigSaveFile) osal_dynlib_getproc(CoreHandle, "ConfigSaveFile"); ConfigSetParameter = (ptr_ConfigSetParameter) osal_dynlib_getproc(CoreHandle, "ConfigSetParameter"); ConfigGetParameter = (ptr_ConfigGetParameter) osal_dynlib_getproc(CoreHandle, "ConfigGetParameter"); + ConfigGetParameterType = (ptr_ConfigGetParameterType) osal_dynlib_getproc(CoreHandle, "ConfigGetParameterType"); ConfigGetParameterHelp = (ptr_ConfigGetParameterHelp) osal_dynlib_getproc(CoreHandle, "ConfigGetParameterHelp"); ConfigSetDefaultInt = (ptr_ConfigSetDefaultInt) osal_dynlib_getproc(CoreHandle, "ConfigSetDefaultInt"); ConfigSetDefaultFloat = (ptr_ConfigSetDefaultFloat) osal_dynlib_getproc(CoreHandle, "ConfigSetDefaultFloat"); @@ -265,6 +267,7 @@ m64p_error DetachCoreLib(void) ConfigListParameters = NULL; ConfigSetParameter = NULL; ConfigGetParameter = NULL; + ConfigGetParameterType = NULL; ConfigGetParameterHelp = NULL; ConfigSetDefaultInt = NULL; ConfigSetDefaultBool = NULL; diff --git a/src/core_interface.h b/src/core_interface.h index 6abdf99..ba809fb 100644 --- a/src/core_interface.h +++ b/src/core_interface.h @@ -56,6 +56,7 @@ extern ptr_ConfigListParameters ConfigListParameters; extern ptr_ConfigSaveFile ConfigSaveFile; extern ptr_ConfigSetParameter ConfigSetParameter; extern ptr_ConfigGetParameter ConfigGetParameter; +extern ptr_ConfigGetParameterType ConfigGetParameterType; extern ptr_ConfigGetParameterHelp ConfigGetParameterHelp; extern ptr_ConfigSetDefaultInt ConfigSetDefaultInt; extern ptr_ConfigSetDefaultFloat ConfigSetDefaultFloat; diff --git a/src/main.c b/src/main.c index 2f3f62e..b6c0bfa 100644 --- a/src/main.c +++ b/src/main.c @@ -193,6 +193,7 @@ static void printUsage(const char *progname) " --rsp (plugin-spec) : use rsp plugin given by (plugin-spec)\n" " --emumode (mode) : set emu mode to: 0=Pure Interpreter 1=Interpreter 2=DynaRec\n" " --testshots (list) : take screenshots at frames given in comma-separated (list), then quit\n" + " --set (param-spec) : set a configuration variable, format: ParamSection[ParamName]=Value\n" " --core-compare-send : use the Core Comparison debugging feature, in data sending mode\n" " --core-compare-recv : use the Core Comparison debugging feature, in data receiving mode\n" " --saveoptions : save the given command-line options in configuration file for future\n" @@ -211,6 +212,90 @@ static void printUsage(const char *progname) return; } +static int SetConfigParameter(const char *ParamSpec) +{ + char *ParsedString, *VarName, *VarValue; + m64p_handle ConfigSection; + m64p_type VarType; + m64p_error rval; + + if (ParamSpec == NULL) + { + fprintf(stderr, "UI-Console Error: ParamSpec is NULL in SetConfigParameter()\n"); + return 1; + } + + /* make a copy of the input string */ + ParsedString = (char *) malloc(strlen(ParamSpec) + 1); + if (ParsedString == NULL) + { + fprintf(stderr, "UI-Console Error: SetConfigParameter() couldn't allocate memory for temporary string.\n"); + return 2; + } + strcpy(ParsedString, ParamSpec); + + /* parse it for the simple section[name]=value format */ + VarName = strchr(ParsedString, '['); + if (VarName != NULL) + { + *VarName++ = 0; + VarValue = strchr(VarName, ']'); + if (VarValue != NULL) + { + *VarValue++ = 0; + } + } + if (VarName == NULL || VarValue == NULL || *VarValue != '=') + { + fprintf(stderr, "UI-Console Error: invalid (param-spec) '%s'\n", ParamSpec); + free(ParsedString); + return 3; + } + VarValue++; + + /* then set the value */ + rval = (*ConfigOpenSection)(ParsedString, &ConfigSection); + if (rval != M64ERR_SUCCESS) + { + fprintf(stderr, "UI-Console Error: SetConfigParameter failed to open config section '%s'\n", ParsedString); + free(ParsedString); + return 4; + } + if ((*ConfigGetParameterType)(ConfigSection, VarName, &VarType) == M64ERR_SUCCESS) + { + switch(VarType) + { + int ValueInt; + float ValueFloat; + case M64TYPE_INT: + ValueInt = atoi(VarValue); + ConfigSetParameter(ConfigSection, VarName, M64TYPE_INT, &ValueInt); + break; + case M64TYPE_FLOAT: + ValueFloat = (float) atof(VarValue); + ConfigSetParameter(ConfigSection, VarName, M64TYPE_FLOAT, &ValueFloat); + break; + case M64TYPE_BOOL: + ValueInt = (int) (osal_insensitive_strcmp(VarValue, "true") == 0); + ConfigSetParameter(ConfigSection, VarName, M64TYPE_BOOL, &ValueInt); + break; + case M64TYPE_STRING: + ConfigSetParameter(ConfigSection, VarName, M64TYPE_STRING, VarValue); + break; + default: + fprintf(stderr, "UI-Console Error: invalid VarType in SetConfigParameter()\n"); + return 5; + } + } + else + { + ConfigSetParameter(ConfigSection, VarName, M64TYPE_STRING, VarValue); + } + + free(ParsedString); + return 0; +} + static int *ParseNumberList(const char *InputString, int *ValuesFound) { const char *str; @@ -378,6 +463,12 @@ static m64p_error ParseCommandLineFinal(int argc, const char **argv) l_TestShotList = ParseNumberList(argv[i+1], NULL); i++; } + else if (strcmp(argv[i], "--set") == 0 && ArgsLeft >= 1) + { + if (SetConfigParameter(argv[i+1]) != 0) + return M64ERR_INPUT_INVALID; + i++; + } else if (strcmp(argv[i], "--core-compare-send") == 0) { l_CoreCompareMode = 1; @@ -409,8 +500,7 @@ static m64p_error ParseCommandLineFinal(int argc, const char **argv) /* missing ROM filepath */ fprintf(stderr, "Error: no ROM filepath given\n"); - exit(2); - return M64ERR_INTERNAL; + return M64ERR_INPUT_INVALID; } /********************************************************************************************************* @@ -468,7 +558,7 @@ int main(int argc, char *argv[]) { printf("UI-console: can't use --core-compare feature with this Mupen64Plus core library.\n"); DetachCoreLib(); - return 3; + return 6; } compare_core_init(l_CoreCompareMode); @@ -483,7 +573,7 @@ int main(int argc, char *argv[]) fprintf(stderr, "Error: couldn't open ROM file '%s' for reading.\n", l_ROMFilepath); (*CoreShutdown)(); DetachCoreLib(); - return 6; + return 7; } /* get the length of the ROM, allocate memory buffer, load it from disk */ @@ -498,7 +588,7 @@ int main(int argc, char *argv[]) fclose(fPtr); (*CoreShutdown)(); DetachCoreLib(); - return 7; + return 8; } else if (fread(ROM_buffer, 1, romlength, fPtr) != romlength) { @@ -507,7 +597,7 @@ int main(int argc, char *argv[]) fclose(fPtr); (*CoreShutdown)(); DetachCoreLib(); - return 8; + return 9; } fclose(fPtr); @@ -518,7 +608,7 @@ int main(int argc, char *argv[]) free(ROM_buffer); (*CoreShutdown)(); DetachCoreLib(); - return 9; + return 10; } free(ROM_buffer); /* the core copies the ROM image, so we can release this buffer immediately */ @@ -529,7 +619,7 @@ int main(int argc, char *argv[]) (*CoreDoCommand)(M64CMD_ROM_CLOSE, 0, NULL); (*CoreShutdown)(); DetachCoreLib(); - return 10; + return 11; } /* search for and load plugins */ @@ -539,7 +629,7 @@ int main(int argc, char *argv[]) (*CoreDoCommand)(M64CMD_ROM_CLOSE, 0, NULL); (*CoreShutdown)(); DetachCoreLib(); - return 11; + return 12; } /* attach plugins to core */ @@ -551,7 +641,7 @@ int main(int argc, char *argv[]) (*CoreDoCommand)(M64CMD_ROM_CLOSE, 0, NULL); (*CoreShutdown)(); DetachCoreLib(); - return 12; + return 13; } } diff --git a/src/osal_files_win32.c b/src/osal_files_win32.c index 92da3a9..acd112e 100644 --- a/src/osal_files_win32.c +++ b/src/osal_files_win32.c @@ -1,44 +1,44 @@ -/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - * Mupen64plus-ui-console - osal_files_win32.c * - * Mupen64Plus homepage: http://code.google.com/p/mupen64plus/ * - * Copyright (C) 2009 Richard Goedeken * - * * - * 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. * - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ - -/* This implements all kinds of system-dependent file handling - * - */ - -#include <stdlib.h> -#include <stdio.h> -#include <string.h> -#include <windows.h> - -#include "m64p_types.h" -#include "osal_preproc.h" -#include "osal_files.h" - -/* definitions for system directories to search when looking for mupen64plus plugins */ -const int osal_libsearchdirs = 1; -const char *osal_libsearchpath[1] = { ".\\" }; - -osal_lib_search *osal_library_search(const char *searchpath) -{ - osal_lib_search *head = NULL, *curr = NULL; +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Mupen64plus-ui-console - osal_files_win32.c * + * Mupen64Plus homepage: http://code.google.com/p/mupen64plus/ * + * Copyright (C) 2009 Richard Goedeken * + * * + * 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. * + * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ + +/* This implements all kinds of system-dependent file handling + * + */ + +#include <stdlib.h> +#include <stdio.h> +#include <string.h> +#include <windows.h> + +#include "m64p_types.h" +#include "osal_preproc.h" +#include "osal_files.h" + +/* definitions for system directories to search when looking for mupen64plus plugins */ +const int osal_libsearchdirs = 1; +const char *osal_libsearchpath[1] = { ".\\" }; + +osal_lib_search *osal_library_search(const char *searchpath) +{ + osal_lib_search *head = NULL, *curr = NULL; WIN32_FIND_DATA entry; HANDLE hDir; @@ -53,53 +53,53 @@ osal_lib_search *osal_library_search(const char *searchpath) free(pchSearchPath); if (hDir == INVALID_HANDLE_VALUE) return NULL; - - /* look for any shared libraries in this folder */ - do - { - osal_lib_search *newlib = NULL; - /* this is a .dll file, so add it to the list */ - newlib = (osal_lib_search *) malloc(sizeof(osal_lib_search)); - if (newlib == NULL) - { - fprintf(stderr, "Memory allocation error in osal_library_search()!\n"); - osal_free_lib_list(head); - FindClose(hDir); - return NULL; - } - if (head == NULL) - { - head = curr = newlib; - } - else - { - curr->next = newlib; - curr = newlib; - } - /* set up the filepath and filename members */ - strncpy(curr->filepath, searchpath, PATH_MAX-2); - curr->filepath[PATH_MAX-2] = 0; - if (curr->filepath[strlen(curr->filepath)-1] != '\\') - strcat(curr->filepath, "\\"); - int pathlen = (int) strlen(curr->filepath); - curr->filename = curr->filepath + pathlen; - strncat(curr->filepath, entry.cFileName, PATH_MAX - pathlen - 1); - curr->filepath[PATH_MAX-1] = 0; - /* set plugin_type and next pointer */ - curr->plugin_type = (m64p_plugin_type) 0; - curr->next = NULL; - } while (FindNextFile(hDir, &entry)); - - FindClose(hDir); - return head; -} - -void osal_free_lib_list(osal_lib_search *head) -{ - while (head != NULL) - { - osal_lib_search *next = head->next; - free(head); - head = next; - } -} + + /* look for any shared libraries in this folder */ + do + { + osal_lib_search *newlib = NULL; + /* this is a .dll file, so add it to the list */ + newlib = (osal_lib_search *) malloc(sizeof(osal_lib_search)); + if (newlib == NULL) + { + fprintf(stderr, "Memory allocation error in osal_library_search()!\n"); + osal_free_lib_list(head); + FindClose(hDir); + return NULL; + } + if (head == NULL) + { + head = curr = newlib; + } + else + { + curr->next = newlib; + curr = newlib; + } + /* set up the filepath and filename members */ + strncpy(curr->filepath, searchpath, PATH_MAX-2); + curr->filepath[PATH_MAX-2] = 0; + if (curr->filepath[strlen(curr->filepath)-1] != '\\') + strcat(curr->filepath, "\\"); + int pathlen = (int) strlen(curr->filepath); + curr->filename = curr->filepath + pathlen; + strncat(curr->filepath, entry.cFileName, PATH_MAX - pathlen - 1); + curr->filepath[PATH_MAX-1] = 0; + /* set plugin_type and next pointer */ + curr->plugin_type = (m64p_plugin_type) 0; + curr->next = NULL; + } while (FindNextFile(hDir, &entry)); + + FindClose(hDir); + return head; +} + +void osal_free_lib_list(osal_lib_search *head) +{ + while (head != NULL) + { + osal_lib_search *next = head->next; + free(head); + head = next; + } +} diff --git a/src/osal_preproc.h b/src/osal_preproc.h index 228bed0..2b69de0 100644 --- a/src/osal_preproc.h +++ b/src/osal_preproc.h @@ -34,6 +34,7 @@ #define OSAL_DIR_SEPARATOR '\\' #define OSAL_CURRENT_DIR ".\\" #define OSAL_DLL_EXTENSION ".dll" + #define osal_insensitive_strcmp(x, y) _stricmp(x, y) #elif defined(__APPLE__) @@ -42,7 +43,8 @@ #define OSAL_DIR_SEPARATOR '/' #define OSAL_CURRENT_DIR "./" #define OSAL_DLL_EXTENSION ".dylib" - + #define osal_insensitive_strcmp(x, y) strcasecmp(x, y) + #else /* Linux-like UNIX */ #include <limits.h> // for PATH_MAX @@ -50,6 +52,7 @@ #define OSAL_DIR_SEPARATOR '/' #define OSAL_CURRENT_DIR "./" #define OSAL_DLL_EXTENSION ".so" + #define osal_insensitive_strcmp(x, y) strcasecmp(x, y) #endif diff --git a/src/version.h b/src/version.h index 1d927bc..39a4575 100644 --- a/src/version.h +++ b/src/version.h @@ -26,7 +26,7 @@ #if !defined(VERSION_H) #define VERSION_H -#define CONSOLE_UI_VERSION 0x016302 +#define CONSOLE_UI_VERSION 0x016303 #define CONSOLE_API_VERSION 0x10000 #define CONSOLE_UI_NAME "Mupen64Plus Console User-Interface" -- Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/mupen64plus-ui-console.git _______________________________________________ Pkg-games-commits mailing list [email protected] http://lists.alioth.debian.org/cgi-bin/mailman/listinfo/pkg-games-commits

