Age | Commit message (Collapse) | Author |
|
Initialize low-level sound startup (calls to I_InitSound) separately
from the high-level sound startup (S_Init). In particular, make sure
that SDL sound is initialized before the textscreen multiplayer
waiting screen is shown. This is an attempt to fix a bug with sound in
multiplayer games on Windows; calling SDL_QuitSubSystem(SDL_INIT_VIDEO)
(on closedown of the textscreen library) causes subsequent attempts to
initialize audio to fail.
Big thanks go to Alexandre-Xavier (AXDOOMER) for working out a fix for
this bug and James Haley (Quasar) for giving some technical background
about the lack of separation between SDL subsystems. This (hopefully)
fixes #270.
|
|
In #364 I recommended -1 as the default to avoid taking screenshots in
some situations where a key event is posted for key 0. It turns out
that wasn't such a great idea, as -1 is not parsed properly by the
config parser, and is shown as ??-1 in the setup tool. Default to zero
instead, and add guards to prevent screenshots being taken by mistake.
Thanks to Alexandre-Xavier for pointing this out.
|
|
The -timedemo flag is broken in Vanilla Heretic/Hexen, as not all
fields are read from the demo headers. Fix it, as there's no utility
in having it nonfunctional and plenty of utility in having it
functional. This fixes #300.
|
|
Add -gameversion options for v1.666, v1.7, v1.8. Set demo and savegame
headers appropriately depending on version. Also add an enum entry for
Doom v1.2 but no code support for it yet.
|
|
A deathmatch player spawning facing directly west does not see the
normal teleport fog (or hear it). This is because of an angle that
should be unsigned but is actually signed. Import PrBoom's code to
emulate this bug. This fixes #186.
|
|
Extend from 96 to the full 128 entries found in the frequency table in
the Vanilla .exes. This was helpfully posted by Gez to the Doom wiki:
http://doomwiki.org/wiki/Talk:PC_speaker_sound_effects
Change from the current scheme of storing frequency values to using
the timer divisor values used by the Vanilla .exes; divide into the PC
timer frequency to calculate the frequencies to play.
Thanks to Gez for dumping the full list of frequencies; this fixes #336.
|
|
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.
|
|
Add snd_maxslicetime_ms variable to control the size of the output
sound buffer, and reduce the default from 70ms to 28ms to match Doom's
35fps timer. Thanks to Holering for reporting this (fixes #345).
|
|
There was a bug where it was possible to keep moving the background
when the boundaries of the map were reached. This is because the code
to move the background was done in calls to AM_Drawer(), which is
fundamentally a bad idea. Some old commented-out code shows that this
was previously done in AM_Drawer (same location that scrolls the map
itself), but it was moved. Move it back.
Thanks to Chris Fielder for the bug report; this fixes #321.
|
|
Print a warning if the user is attempting to record or playback a demo o...
|
|
|
|
Add a dedicated key for taking screenshots.
|
|
connect to a network game using one of the BFG Edition IWADs.
|
|
|
|
|
|
Allow for PNG screenshots.
|
|
|
|
|
|
|
|
|
|
CMDLINE is now found in a subdirectory in source releases, making
the note in README inaccurate. Reword this to be correct.
Thanks to spicyjack for reporting this bug. This fixes #323.
|
|
When releasing mouse grab (activating menu etc.) we move the mouse
cursor to a non-distracting location at the bottom-right of the
screen. But this was causing abrupt jerks in mouse movement when
re-grabbing the mouse again. Center the mouse when turning on grab so
that this doesn't happen.
This fixes #283.
|
|
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.
|
|
|
|
Ultimate Doom's doom.exe will crash when run with an IWAD that doesn't
contain M_EPI4 (like the stock v1.9 IWAD).
Thanks to Alexandre Xavier for the bug report (fixes #344).
|
|
Heretic and Hexen had the pause key hard-coded to KEY_PAUSE when they
should actually use key_pause so that they can be remapped by the
user. Thanks to Fabian Greffrath for the bug report (fixes #337).
|
|
Lots of otherwise Vanilla-compatible WADs contain DEHACKED lumps.
Allow these to be loaded by adding a -dehlump command line parameter.
Thanks to Fabian Greffrath for the suggestion (fixes #349).
|
|
The fix-up of the thinker function was (unnecessarily) guarded by an
if() condition that meant it was not being reset properly on load.
This caused moving platforms to be not restored properly when loading
savegames.
Fixes #343. Thanks to romeroyakovlev for the bug report.
|
|
Allow to rebind artifact keys in Hexen.
|
|
|
|
Use "ON" to mean "high detail", "OFF" for "low detail". The logic was
backwards.
|
|
More robust checks for BFG Edition.
|
|
|
|
1) Move the check for (bfgedition) right behind loading the IWAD, i.e.
before any PWADs are loaded that could probably provide a DMENUPIC lump.
2) Instead of checking for a missing TITLEPIC lump (which is only true
for the doom2.wad shipped with the BFG Edition) check for the presence
of DMENUPIC (which is exclusive to both classic IWADs shipped with the
BFG Edition). The M_GDHIGH lumps, however, are incompatibly modified
in *both* IWADs.
3) Move the check for the missing TITLEPIC lump to the place where it
becomes actually crucial, i.e. D_DoAdvanceDemo() and make it independent
of the (bfgedition) check. So, PWADs still have a chance to provide their
own TITLEPIC lump.
|
|
The BFG edition IWADs have their M_GDHIGH lumps changed to say
"Fullscreen:" instead of just "high". This breaks the options menu
which assumes a graphic that is not as wide.
In the same spirit as the title screen workaround, add a workaround
for this as well: use the message "on/off" graphics instead when we
are running using a BFG edition IWAD.
This fixes #341 (thanks Fabian Greffrath).
|
|
I originally flagged this as a poor quality mode because it doesn't
include every original pixel at least once (ie. its dimensions are
not >= 640x400 - twice the original resolution). In practise, it's
actually okay though.
Add long comment adapted from my comment on #339 explaining what
the definition of a poor quality mode is.
|
|
Some improvements to the build system
|
|
Add back to binaries that are built and installed as _SCRIPTS targets.
Copy instead of symbolic linking, the files are needed as binary copies anyway to allow for separate packaging of the game engines.
|
|
CheckVolumeSeparation() has the sep and vol parameters backwards
compared to how they are used when the function is called. Reverse
the order to fix this (thanks proteal). Fixes #330.
|
|
1) Instead of copying chocolate-setup into chocolate-{doom,heretic,hexen,strife}-setup,
respectively, check in configure for symbolic linking and use that if available
(falls back to "cp -pR" if not).
2) Add $(icons_DATA) to CLEANFILES so they get removed in clean phase; they are
generated from doom-png and setup.png, respectively.
3) Consistently use @PROGRAM_PREFIX@ instead of the hard-coded "chocolate-" in
the rules for the man pages.
4) Generate one man page for each setup program by symbolic linking of
chocolate-setup.6 (see 1), add them to the list of installed man pages and
to CLEANFILES.
5) Remove the redundant $(EXEEXT) suffix from the setup binaries (they were missing
for execgames_PROGRAMS, anyway)
|
|
Freedoom has new IWAD names. Support these as fallbacks if no other
IWAD file can be found, but prefer FreeDM as it has Vanilla-
compatible levels. Show a warning on startup if running using the
main Freedoom IWADs.
|
|
Some distros don't like automagic dependencies. Fixes #315.
|
|
heretic: fix automap panning left
|
|
When follow mode is off, hitting left would cause it to scroll all the way to the west of the map without stopping.
|
|
Heretic/Hexen/Strife bugfixes from Sander van Dijk.
|
|
Implement this the same way it is implemented for doom and strife.
|
|
Otherwise, the same key can be bound to "Show mission" and one of the other
"More controls..." at the same time.
|
|
For arch-dependent files, there is $exec_prefix. In most practical
cases, it has the same value as $prefix, but do use it anyhow.
|
|
The auxiliary build directory specified with AC_BUILD_AUX_DIR is
also automatically created AFAICS, so it need not be created
by autogen.sh.
[For directories that are not (such as with AC_CONFIG_MACRO_DIR),
place an empty .gitignore file in it, so that it always exists.]
|