Commit graph

323 commits

Author SHA1 Message Date
Daniel Gibson
cf8d287a4e Fix Sys_ListFiles() on POSIX once again
Turned out that as "extension" (which is really more like a pattern
that matches the whole file) was even used with patterns like "*.*"
so we do proper matching using fnmatch() now - which is even easier
than the old way.
Now deleting savegames on POSIX works.
2013-01-04 14:40:35 +01:00
Daniel Gibson
a405b37f13 Pause when window loses focus, introduce com_pause
If the window loses focus com_pause is set to 1, when it regains focus
it's set to 0.
The behaviour on Win32 stayed the same (the implementation is less
hacky though) and Linux now matchces that.
2013-01-04 14:40:35 +01:00
Daniel Gibson
732d8987d3 support ctrl-g for (un)grabbing mouse
Many Linux Games support that
2013-01-04 14:40:35 +01:00
Daniel Gibson
a1c1f1b6b2 Support resizing windows for SDL1.2
By implementing GLimp_SetScreenParms() for SDL1.2
and enhancing the event handling
2013-01-04 14:40:35 +01:00
Daniel Gibson
d6c32cd49b Support resizing windows + improve fullscreen for SDL2
By implementing GLimp_SetScreenParms() and enhancing the
event handling
2013-01-04 14:40:35 +01:00
Daniel Gibson
19effdad2c fix zlib include path in zip.h 2013-01-04 14:40:35 +01:00
Robert Beckebans
33774e2225 Added OpenAL support to Linux 2013-01-04 13:24:52 +01:00
Robert Beckebans
c47e78d6f3 Misc changes 2013-01-03 21:25:34 +01:00
Robert Beckebans
00a459c61b OpenAL plays first scratchy sounds 2013-01-03 20:17:54 +01:00
Robert Beckebans
038037e524 Replaced most XAudio2 calls with OpenAL 2013-01-03 16:56:25 +01:00
Robert Beckebans
9a40f246b6 Copied neo/sound/XAudio2/XA2_* to neo/sound/OpenAL/AL_* 2013-01-02 21:45:47 +01:00
Robert Beckebans
946768ad9f Moved minizip contrib code to libs/zlib/minizip/ 2013-01-02 17:09:45 +01:00
Robert Beckebans
3830118767 Merge remote-tracking branch 'DanielGibson/update-zip' 2013-01-02 16:01:35 +01:00
Daniel Gibson
66ed216ad8 Update zip code to minizip 1.1
.. from zlib-1.2.7/contrib/minizip/
It resides next to the unzip code in framework/minizip/

This updates makes the code a bit cleaner and creating zip64
with the idZipBuilder is now more feasible and update to future
minizip versions should be easier as I didn't change the original
files from minizip 1.1 very much.
2013-01-02 05:29:56 +01:00
Daniel Gibson
ca112294b8 Update unzip code to minizip 1.1
.. from zlib-1.2.7/contrib/minizip/
The original source was minizip 0.15beta from 1998.

This update brings zip64 support (untested) and cleaner code.

Furthermore, updates to future minizip should be much easier now, as
my changes to the original source files from minizip are quite small.

To make diffing to upstream minizip-src easier, I added the minizip
source as exceptions in the astyle-scripts and left them in their own
directory.

Two custom functions from idSoftware - unzSetCurrentFileInfoPosition()
and unzGetCurrentFileInfoPosition() - aren't needed anymore as
minizip 1.1 has functions that do the same.
2013-01-02 05:29:56 +01:00
Daniel Gibson
634f7ea630 Update zlib to version 1.2.7 2013-01-02 05:29:56 +01:00
Daniel Gibson
a102d9d469 also do Sys_Sleep for less then 20ms
Sys_Sleep(10) is used quite often throughout the code.
2012-12-30 16:26:24 +01:00
Daniel Gibson
478d7e4f6e Workaround for erebus1 crash in debug mode on Linux 2012-12-30 16:24:12 +01:00
Daniel Gibson
edb4856abd Set timestamp for savegames on POSIX
So they can be sorted correctly etc
2012-12-29 05:29:56 +01:00
Daniel Gibson
1e3bc3429b Fix Sys_ListFiles() on POSIX as needed for savegames
In Sys_ListFiles() the extension was abused to match whole
filenames (of savegames), not just their extensions - that
didn't work with the POSIX backend, now it does.

Sys_ListFiles() now also supports "*" as a wildcard that matches
all files - needed for deleting savegames.
However, things like "bl*" or "*ub" don't work.

While at it, I replaced readdir() with the thread-safe readdir_r()
2012-12-29 05:29:29 +01:00
Daniel Gibson
f77ca851d5 Small fix in Mem_Alloc16(): int->size_t 2012-12-29 04:27:01 +01:00
Robert Beckebans
e3584014b9 Fixed MSVC C++ exception warnings 2012-12-24 12:34:18 +01:00
Daniel Gibson
876aa96637 Fix messed up view angle after taking screenshots
Pretty much like https://github.com/dhewm/dhewm3/issues/18
but here it took some more changes
2012-12-23 06:43:20 +01:00
Daniel Gibson
7cfe7dd69a Improve CMakeLists.txt
* manage warning flags in a variable, they're reused for
  each profile anyway (but this way profile-specific flags can
  still be added before or after the generic ones)
* added some disable-warning flags specifically for clang
2012-12-23 06:40:48 +01:00
Daniel Gibson
cca3053069 Prevent segfault on shutdown
This should also happen on Windows, I'm really surprised
this hasn't been noticed there
2012-12-23 06:40:48 +01:00
Daniel Gibson
ba126dde3a Fixed various warnings from clang 2012-12-23 06:40:47 +01:00
Robert Beckebans
9280732913 Fixed Linux build. 2012-12-22 16:34:02 +01:00
Robert Beckebans
dd9b8a8710 Added support for precompiled headers for MSVC which reduced the compiled time from 4 minutes to 67 seconds. 2012-12-22 16:18:19 +01:00
Robert Beckebans
865ee792c0 Disabled usage of pthread_{get,set}_name because it does not work on all Linux systems. 2012-12-22 13:15:47 +01:00
Daniel Gibson
742ef7da83 Fix scrolling in Menus for SDL2
scrolling didn't stop, e.g. in the resolution selection menu
2012-12-22 03:26:01 +01:00
Daniel Gibson
f0dfe7e499 restore SDL1-support in sdl_events.cpp
* add define for SDL_SCANCODE_GRAVE - seems like only SDL2
  has names for the values
* add some missing keys to SDL_KeyToDoom3Key
* add scancode to unmapped-key warning
* backspace needs to be handled the same for SDL1 as in SDL2
  (i.e. a new event must be created for it) to work in console
2012-12-22 03:25:33 +01:00
Robert Beckebans
26d3ef7e54 Changed SAVE_PATH on Windows so we don't break the savegames of the original game. 2012-12-21 16:02:42 +01:00
Daniel Gibson
0be69a3162 Fix console on Linux
* Add support for Console-Key independently of KB Layout (with scancode)
    * add support for TAB key
    * Add hack so console is empty after opening it (SDL-only)
2012-12-21 04:58:50 +01:00
Daniel Gibson
ab86006668 Improve console behavior
* Pressing up and down again in the console will result in an empty line,
  not the stay at the last line from history
* Pressing up will really show the last command, not the last-but-one
2012-12-21 04:58:50 +01:00
Robert Beckebans
731428164f Fixed error: class idLocalUserWin has no member named StorageSizeAvailable 2012-12-20 02:38:01 +01:00
Robert Beckebans
6b918aef86 Disabled broken savegame and profile storage checks for the PC 2012-12-19 23:56:20 +01:00
Robert Beckebans
a95f5811b6 Updated README.txt 2012-12-19 16:19:42 +01:00
Robert Beckebans
bf7f892d5d Updated README.txt with compile instructions for Linux 2012-12-19 16:18:18 +01:00
Robert Beckebans
f57d92a1ab Renamed RBDoom3 to RBDoom3BFG 2012-12-19 15:23:57 +01:00
Daniel Gibson
b1dabf3efd Improve R_GetModeListForDisplay()
* Fixed small bug when only one display mode was found by SDL2
* removed some redundant and dead code
* improved warnings
2012-12-18 22:50:59 +01:00
Daniel Gibson
4863f11607 Fix bug in vidMode_t constructor
it caused the default/static video mode list to contain only garbage
2012-12-18 22:49:22 +01:00
Robert Beckebans
978044d491 Merge branch 'master' into glew 2012-12-18 11:36:38 +01:00
Daniel Gibson
f3c4948b2f R_GetModeListForDisplay() for SDL2 2012-12-18 01:11:21 +01:00
Daniel Gibson
dd987814f7 Fix cursor in menus
it didn't work correctly because the mouse isn't grabbed
(in contrast to dhewm3).
It's fixed now by returning absolute coordinates when a menu
is open, furthermore the cursor is now always hidden.
2012-12-18 01:10:38 +01:00
Robert Beckebans
9c477c6bd9 Possible fix for the linker problems on Ubuntu 12.04 64 bit 2012-12-17 20:36:11 +01:00
Robert Beckebans
ff531907c7 Replaced QGL with GLEW. 2012-12-17 17:30:59 +01:00
Robert Beckebans
99166faf71 Fixed compile problems on Win64 2012-12-17 12:24:31 +01:00
Daniel Gibson
e42a886b29 remove deprecated glShadeModel stuff
it's only for fixed function opengl, thus it's not needed and deprecated in OpenGL 3.2
AMD's driver complains about this.
2012-12-17 01:02:53 +01:00
Daniel Gibson
ddaa0c8f70 Fix crash when loading mc_underground map
it was because in Window.cpp/h a lot of pointers were castet to ints..
if such abomination is done at least use intptr_t...
2012-12-17 00:54:48 +01:00
Robert Beckebans
63f9d4000f First playable version on Linux. 2012-12-16 17:31:21 +01:00