From ea6bc745c64b7832d3cea2d5ae3748c0f81109c3 Mon Sep 17 00:00:00 2001 From: Simon Howard Date: Mon, 26 May 2014 14:11:25 -0400 Subject: setup: Add default config for Xbox360 on Linux. The Xbox360 controller is handled differently by different operating systems, and the layout is different on Linux to Windows. Detect the Linux layout and set some appropriate defaults. --- src/setup/joystick.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/setup/joystick.c b/src/setup/joystick.c index b57667f4..4cc62fe1 100644 --- a/src/setup/joystick.c +++ b/src/setup/joystick.c @@ -206,6 +206,26 @@ static const joystick_config_t xbox360_controller[] = {NULL, 0}, }; +// Xbox 360 controller under Linux. +static const joystick_config_t xbox360_controller_linux[] = +{ + {"joystick_x_axis", CREATE_HAT_AXIS(0, HAT_AXIS_HORIZONTAL)}, + {"joystick_y_axis", CREATE_HAT_AXIS(0, HAT_AXIS_VERTICAL)}, + // Ideally we'd like the trigger buttons to be strafe left/right + // But Linux presents each trigger button as its own axis, which + // we can't really work with. So we have to settle for a + // suboptimal setup. + {"joyb_fire", 2}, // X + {"joyb_speed", 0}, // A + {"joyb_jump", 3}, // Y + {"joyb_use", 1}, // B + {"joyb_strafeleft", 4}, // LB + {"joyb_straferight", 5}, // RB + {"joyb_menu_activate", 7}, // Start + {"joyb_prevweapon", 6}, // Back + {NULL, 0}, +}; + // Logitech Dual Action (F310, F710). Thanks to Brad Harding for details. static const joystick_config_t logitech_f310_controller[] = { @@ -249,6 +269,13 @@ static const known_joystick_t known_joysticks[] = xbox360_controller, }, + // Xbox 360 controller as it appears on Linux. + { + "Microsoft X-Box 360 pad", + 6, 11, 1, + xbox360_controller_linux, + }, + { "Logitech Dual Action", 4, 12, 1, -- cgit v1.2.3 From 0fb3f5cd0d297de8e10610e4a6cc98d9ca41af4a Mon Sep 17 00:00:00 2001 From: James Haley Date: Thu, 5 Jun 2014 10:18:44 -0500 Subject: Make vcproj release settings consistent Max optimization settings for release that were derived from Eternity are now effective for all 4 games. In addition, generate map files for debugging purposes. --- msvc/doom.vcproj | 7 ++++++- msvc/heretic.vcproj | 14 +++++++++++--- msvc/hexen.vcproj | 14 +++++++++++--- 3 files changed, 28 insertions(+), 7 deletions(-) diff --git a/msvc/doom.vcproj b/msvc/doom.vcproj index 16b6537c..7f98d3a5 100644 --- a/msvc/doom.vcproj +++ b/msvc/doom.vcproj @@ -123,14 +123,18 @@ @@ -139,11 +142,16 @@ Name="VCLinkerTool" AdditionalDependencies="SDL.lib SDL_mixer.lib SDL_net.lib SDLmain.lib" OutputFile="$(OutDir)\chocolate-heretic.exe" + LinkIncremental="0" IgnoreDefaultLibraryNames="msvcrtd" GenerateDebugInformation="false" + GenerateMapFile="true" SubSystem="1" OptimizeReferences="2" EnableCOMDATFolding="2" + LinkTimeCodeGeneration="1" + DataExecutionPrevention="0" + TurnOffAssemblyGeneration="false" TargetMachine="1" /> @@ -140,11 +143,16 @@ Name="VCLinkerTool" AdditionalDependencies="SDL.lib SDL_mixer.lib SDL_net.lib SDLmain.lib" OutputFile="$(OutDir)\chocolate-hexen.exe" + LinkIncremental="0" IgnoreDefaultLibraryNames="msvcrtd" GenerateDebugInformation="false" + GenerateMapFile="true" SubSystem="1" OptimizeReferences="2" EnableCOMDATFolding="2" + LinkTimeCodeGeneration="1" + DataExecutionPrevention="0" + TurnOffAssemblyGeneration="false" TargetMachine="1" /> lumpnum); } + free(context->filename); Z_Free(context->readbuffer); Z_Free(context); } -- cgit v1.2.3 From e03f775902d666e65f1d06332871a80b0e3cc10f Mon Sep 17 00:00:00 2001 From: Fabian Greffrath Date: Tue, 5 Aug 2014 17:46:06 +0200 Subject: call InitializeSections() in DEH_LoadLump() apparently, this has been forgotten before, so DEH_PointerInit() was not executed which meant that *some* DEHACKED patches would not work when loaded from within a PWAD but would work when extracted from that WAD and loaded via -deh. fixes #421 --- src/deh_main.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/deh_main.c b/src/deh_main.c index ff0236b1..c98962a9 100644 --- a/src/deh_main.c +++ b/src/deh_main.c @@ -346,6 +346,12 @@ int DEH_LoadLump(int lumpnum, boolean allow_long) deh_context_t *context; boolean long_strings, long_cheats; + if (!deh_initialized) + { + InitializeSections(); + deh_initialized = true; + } + if (allow_long) { long_strings = deh_allow_long_strings; -- cgit v1.2.3