Age | Commit message (Collapse) | Author |
|
Backspace or delete clears other input boxes; make it do the same for
keyboard, mouse and joystick inputs.
|
|
As a second fallback, if all joysticks are centered and no buttons
are pressed, look at the hats on the joystick to see if one of those
is uncentered. Bizarre as it seems, some gamepads actually present the
D-pad as a hat.
|
|
Detect when we need to configure a "button axis" by falling back to
buttons when none of the joystick axes are significantly outside of
the centered range. Add extra calibration stages to get the D-pad
buttons for right and down in these cases.
|
|
The table of IWAD data is stored in const memory, so make all iwad_t
pointers const to fix compiler warnings.
|
|
Vanilla Doom's setup.exe only made reference to "joysticks" as back
then gamepads were relatively uncommon for PCs and ports for game
controllers canonically known as "joystick ports". Nowadays it's far
more likely (and ergonomic) that the player will be using a gamepad
than a joystick. Change the labelling to refer to "Gamepad/Joystick"
or "controller" instead.
|
|
When using a joystick or gamepad it's nice to be able to bring up the
menu without having to reach for the keyboard. This makes modern
gamepads more useful/usable.
|
|
Modern gamepads typically have 2-3 D-pads and joysticks. This means
that it's desirable to be able to use one joystick for turning and
another for strafing. Add another axis in addition to the current X
and y axes that performs strafe movement.
|
|
Some systems (fbcon SDL driver) get messed up if not cleanly shut
down. Make sure that we call SDL_QuitSubsystem on shutdown.
|
|
Some machines don't work well with 8-bit screen depths any more. It's
better to default to just using the machine's native color depth
instead. Change the default to 0 (for SDL_SetVideoMode this means "use
native color depth"), auto-adjust to native color depth on startup if
screen_bpp=0 (so that debug messages at least make sense) and document
for the config file value that a value of zero means "use native".
|
|
Once a game type (IWAD) has been selected, remember that selection
rather than resetting to the first item in the list when the window is
closed and reopened. This fixes #169 (thanks Alexandre Xavier).
|
|
Don't launch the game if a server address has not been entered; show a
message to the user instead. This fixes #121.
|
|
Last argument to M_StringJoin needs to be NULL.
|
|
When configuring Chocolate Strife the sound dialog can become quite
tall, and the dialog is visibly uncentered vertically. Move it up
slightly to counterbalance it.
|
|
Define TXT_{StringCopy,StringConcat,snprintf,vsnprintf} as analogs of
the m_misc.c versions so that the textscreen library does not need a
dependency on the Doom code, and change all textscreen code to use
these instead of unsafe functions. This fixes #372.
|
|
Use M_snprintf() or M_StringJoin() instead where appropriate.
This fixes #371.
|
|
The Windows API has an _snprintf function that is not the same as
Unix's snprintf(): if the string is truncated then no trailing NUL
character is appended. This makes the function unsafe. Define a
replacement/wrapper called M_snprintf that works the same but always
appends a trailing NUL, for safety on Windows and other OSes that
behave like this.
Do the same thing for vsnprintf(), and update HACKING to list
snprintf/vsnprintf as forbidden functions. This fixes #375;
thanks to Quasar for pointing out the different behavior of these
functions.
|
|
Eliminate use of strcpy, strcat, strncpy, and use the new safe
alternatives.
|
|
It's more readable to write "M_StringEndsWith(..." than doing a bunch of
pointer arithmetic, and this is a common pattern. Also add
M_StringStartsWith, M_StringJoin and M_StringCopy. The latter is a
safe alternative for strcpy() that works the same as OpenBSD's
strlcpy(). Use these functions in a few places where it makes sense.
|
|
Doom, Heretic, Hexen and Strife have different default SFX and music
volumes. Make sure the setup tool sets the appropriate default when
creating a new configuration file.
Thanks to Alexandre-Xavier for reporting this and providing the
correct defaults. This fixes #347.
|
|
Preserve the snd_maxslicetime_ms variable when loading/saving configs
in the setup tool.
|
|
Mix_SetMusicCMD() allows a program to be specified to configure an
external program to be invoked for music playback. Add a config
variable (snd_musiccmd) to allow this to be set from a configuration
file. Thanks to Holering for his comments on Doomworld about how to do
this.
|
|
|
|
|
|
|
|
Hexen: Deathkings of the Dark Citadel uses levels up to MAP60, not
MAP40 as used in hexen.wad. Bump up the limit for Hexen to MAP60 so
that it is possible to play multiplayer games with hexdd.wad loaded.
Thanks to Rhiyo for the bug report. This fixes #312.
|
|
|
|
Otherwise, the same key can be bound to "Show mission" and one of the other
"More controls..." at the same time.
|
|
fabian).
Subversion-branch: /branches/v2-branch
Subversion-revision: 2756
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2754
|
|
Strife (thanks Alexandre-Xavier).
Subversion-branch: /branches/v2-branch
Subversion-revision: 2736
|
|
correctly. This was previously fixed on trunk but not merged. Also
update the manifest to add GUIDs for Windows 8.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2734
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2728
|
|
DPI virtualization.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2727
|
|
crashing in fullscreen mode (thanks Ryan Peel).
Subversion-branch: /branches/v2-branch
Subversion-revision: 2721
|
|
Alexandre Xavier).
Subversion-branch: /branches/v2-branch
Subversion-revision: 2719
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2714
|
|
r2633.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2712
|
|
driver over the Windows GDI one. This causes far too many problems.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2710
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2694
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2691
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2674
|
|
being configured, not just always "Chocolate Doom".
Subversion-branch: /branches/v2-branch
Subversion-revision: 2669
|
|
Alexandre Xavier).
Subversion-branch: /branches/v2-branch
Subversion-revision: 2633
|
|
Alexandre Xavier).
Subversion-branch: /branches/v2-branch
Subversion-revision: 2619
|
|
What support exists is for obsolete devices I no longer possess; I've
never been contacted about the port and it's been several years since
I even bothered to build a new version. All the extra overrides are
clutter that can just be removed.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2615
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2578
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2577
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2569
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2566
|
|
file.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2564
|