Age | Commit message (Collapse) | Author |
|
The config file API previously relied on binding config variables
using M_BindVariable() which took a void pointer. It occurred to me
that if used on a boolean variable, this would be erroneous, but the
void pointer would make it impossible to tell. Split this into
separate M_Bind{Foo}Variable() functions based on type, which allows
for proper type checking on the pointers that are passed.
Vaguely related to #509.
|
|
We already have 1280x960, which is the correct aspect ratio. This
means that when running at 1080p the windowboxing borders will be
slightly thicker, but if we're already showing borders anyway, it's
better to at least use the correct aspect ratio.
This fixes #460. Thanks to Doom_user for asking about this on
Doomworld: http://www.doomworld.com/vb/post/1316735
|
|
`else if (f == 'w')` doesn't really secure itself against
uninitialized memory, it still needs to test that `s == 3`.
|
|
This allows strings like "640x480w" to cause the engine to run in a
window, while strings like "1280x800f" cause the engine to run in
fullscreen mode. This is inspired by the behavior of the PrBoom
-geometry parameter.
|
|
This change rewrites and simplifies the copyright headers at the top
of all source files:
* Remove "Emacs style mode select" line; this line was included in
the headers for the originally released source files and appears
to be to set the file type for old versions of Emacs. I'm not sure
entirely why it was required but I don't think it is any more.
* Remove "You should have received a copy of..." text from copyright
header. This refers to the old 59 Temple Place address where the
FSF headquarters used to be located and is no longer correct.
Rather than change to the new address, just remove the paragraph
as it is superfluous anyway. This fixes #311.
* Remove ---- separator lines so that the file headers are barer
and more simplified.
|
|
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".
|
|
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.
|
|
As part of this, add DIR_SEPARATOR_S as a string version of the
DIR_SEPARATOR macro. Change M_TempFile() to return a string allocated
on the C heap rather than the zone heap.
This is a first step towards fixing #371.
|
|
The released linuxdoom source had the devparm ticker dots at a spacing
of two pixels rather than four pixels (as used in Vanilla Doom). In
commit 4a31ec8fcee20e.. I changed this back to four pixel spacing, but
forgot to multiply the number of tics to adjust as appropriate. Fix
this so that the dots are calculated just like Vanilla Doom is.
Thanks to _bruce_ for pointing this out on Doomworld, and to
Alexandre-Xavier for questioning my reasoning when I wasn't convinced
that the current behavior was wrong. This fixes #360.
|
|
Remove special logic for setting a scale factor (2x, 3x, etc.) when
running fullscreen instead of windowed. This fixes a crash due to the
fact that I_GraphicsCheckCommandLine() is called before SDL's video
subsystem is initialized.
This makes -2 identical to -geometry 640x480, which is arguably a
better (more easily comprehensible) behavior.
Thanks to Fabian Greffrath for reporting the bug. This fixes #338.
|
|
There is no real scan code for the PrintScreen key under DOS, but it
is convenient to be able to bind it as a screenshot key. Define a
"fake" scancode (126) to represent PrintScreen so that it can be
represented as a key binding in configuration files. Also add some
comments/notes to the scantokey[] lookup table.
This fixes #369.
|
|
|
|
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.
|
|
them have junk values.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2749
|
|
prevent "jumps" of the mouse when activating the menu.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2743
|
|
crashing in fullscreen mode (thanks Ryan Peel).
Subversion-branch: /branches/v2-branch
Subversion-revision: 2721
|
|
driver over the Windows GDI one. This causes far too many problems.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2710
|
|
startup.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2699
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2695
|
|
mouse grab.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2667
|
|
keys, which cause the same behavior.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2632
|
|
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: 2553
|
|
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2552
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2546
|
|
with it (thanks exp(x)).
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2545
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2537
|
|
the cursor to be changed. This fixes Chocolate Doom on AmigaOS (thanks
Timo Sievänen).
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2483
|
|
screen. Add a configuration file variable to control where the game
window should appear.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2467
|
|
Subversion-branch: /branches/v2-branch
Subversion-revision: 2458
|
|
the splash screen before network startup.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2435
|
|
PC hardware that only supports 6 bits per channel (thanks GhostlyDeath).
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2433
|
|
can be added to other games.
Subversion-branch: /branches/v2-branch
Subversion-revision: 2395
|
|
Subversion-branch: /branches/strife-branch
Subversion-revision: 2367
|
|
Subversion-branch: /branches/raven-branch
Subversion-revision: 2347
|
|
capslock turned on. Fix a similar problem in-game when typing cheat
codes or using menu hotkeys (thanks Alexandre Xavier).
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2327
|
|
temporarily until the netgame changes on raven-branch are finished.
Subversion-branch: /branches/strife-branch
Subversion-revision: 2259
|
|
Subversion-branch: /branches/raven-branch
Subversion-revision: 2258
|
|
resize handle to the corner of the window that overlaps the view of the
game.
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2231
|
|
also checks that extra options were provided on the command line (thanks
Sander van Dijk).
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2223
|
|
exp(x)).
Subversion-branch: /branches/raven-branch
Subversion-revision: 2222
|
|
Subversion-branch: /branches/raven-branch
Subversion-revision: 2217
|
|
modes.
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2215
|
|
Subversion-branch: /branches/raven-branch
Subversion-revision: 2213
|
|
several days ago.
Subversion-branch: /branches/raven-branch
Subversion-revision: 2212
|
|
supported by the hardware.
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2174
|
|
the screen. This is more CPU and memory efficient, and also fixes the
"flashing border" bug when palette flashes occur.
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2170
|
|
the cause of screen tearing reports.
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2169
|
|
screen pixel depth.
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2166
|
|
mode, scaling up into an intermediate 8-bit buffer first. This should
help with the palette problems experienced by Windows Vista/7 users.
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2164
|