Robert Beckebans
0b66e57359
Merge branch 'master' into openal
2013-01-05 11:50:21 +01:00
Robert Beckebans
64a2c6c39c
Merge remote-tracking branch 'DanielGibson/gcc-pch'
2013-01-05 11:36:03 +01:00
Robert Beckebans
0881085589
Merge remote-tracking branch 'DanielGibson/improve-window-handling'
2013-01-05 11:35:52 +01:00
Robert Beckebans
00a9c353f3
Defaulted OPENAL=ON for the openal branch
2013-01-05 00:14:55 +01:00
Robert Beckebans
b55d668c5c
Merge branch 'master' into openal
2013-01-05 00:13:51 +01:00
Robert Beckebans
a2fe079600
Changed OpenAL to use buffers instead of streaming
2013-01-05 00:13:35 +01:00
Robert Beckebans
0cf039bfdb
Changed project to use the DirectX10 SDK on Windows 8
2013-01-04 22:51:30 +01:00
Robert Beckebans
9ac405223b
Changed idSoundSample_OpenAL::MakeDefault() to generated a proper beep sound
2013-01-04 18:12:20 +01:00
Daniel Gibson
c58f0d4749
Precompiled Headers for GCC+Clang
2013-01-04 17:01:40 +01:00
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
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
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
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
Robert Beckebans
823ea36ffe
Added support for OpenGL 3.2 context debugging using SDL 2.0
2012-12-16 12:22:07 +01:00
Robert Beckebans
b7d3481f57
Fixed missing 16 byte alignment on 32 bit Linux for SSE structs.
2012-12-15 14:53:11 +01:00
Robert Beckebans
d7888cf99d
Added support for SDL 2.0
2012-12-14 19:03:30 +01:00
Robert Beckebans
202c54ffff
Fixed backslashes bug in idRenderProgManager::LoadGLSLShader()
2012-12-14 14:21:50 +01:00
Robert Beckebans
8c9a2d3e0b
Some changes to the filesystem to give local files a higher priority than resource files.
2012-12-14 14:20:04 +01:00
Robert Beckebans
8b8cfe7d25
Small changes to pthreads.
2012-12-14 13:10:52 +01:00
Robert Beckebans
776b1a2938
Merge remote-tracking branch 'DanielGibson/linux'
2012-12-14 12:06:40 +01:00
Robert Beckebans
3e533d1e29
Merge branch 'linux' of https://github.com/RobertBeckebans/RBDOOM-3-BFG into linux
2012-12-14 11:50:29 +01:00
Robert Beckebans
7b43a34f37
Changed idSysSignal pthread implementation to consider the manualReset parameter
2012-12-14 11:50:20 +01:00
Daniel Gibson
a5f5d75e82
Use -O0 for Debug builds, make sure that compiles
...
because of some GCC bug the included refactoring in
PacketProcessor.* was necessary
2012-12-14 00:52:31 +01:00
Daniel Gibson
67d6a5a1fa
Make sure SDL_Init() was called before SDL_VideoInfo()
...
by adding GLimp_PreInit()
2012-12-14 00:51:22 +01:00
Daniel Gibson
ebbb98c9bd
eliminate more longs
...
for 64bit compatibility.
2012-12-13 22:07:49 +01:00
Robert Beckebans
ca85c4d27b
Added changes to compile for Win64
2012-12-13 20:37:55 +01:00
Daniel Gibson
ee88148bd1
eliminate more longs
...
for 64bit compatibility.
2012-12-13 01:28:41 +01:00
Robert Beckebans
86deed26b8
Merged 64 bit fixes.
2012-12-12 12:11:55 +01:00
Robert Beckebans
2952f227ea
Merge remote-tracking branch 'DanielGibson/linux' into linux
2012-12-12 11:35:19 +01:00
Robert Beckebans
baac8780a5
Fixed some bugs in idSysSignal.
2012-12-12 11:29:55 +01:00
Robert Beckebans
47f3f1b999
Fixed bug in Sys_CPUCount()
2012-12-12 00:37:01 +01:00
Robert Beckebans
6c4590d8d4
Fixed stupid backslashes bug in idFileSystemLocal::CreateOSPath()
2012-12-12 00:36:07 +01:00
Daniel Gibson
9eeea7adf3
Fix tons of compiler warnings
...
mostly -Wreorder, use const char* instead of char* for "static strings",
fix inappropriate usage of NULL (e.g. instead of '\0' or (int)0)
2012-12-11 23:57:05 +01:00
Robert Beckebans
b848312904
Fixed missing SDL video initialization.
2012-12-11 23:49:41 +01:00
Robert Beckebans
99f144c32f
Added missing neo/sys/sdl/sdl_local.h
2012-12-11 23:23:17 +01:00
Robert Beckebans
a1730fa430
Supplemented Linux backend with missing functions. -> [100%] Built target RBDoom3 on Kubuntu 12.10
2012-12-11 23:17:23 +01:00
Robert Beckebans
f7279b850c
Disabled -Wall option
2012-12-09 02:10:01 +01:00
Robert Beckebans
6d70f04cc9
Ported the Win32 threads to POSIX pthreads.
2012-12-09 01:55:59 +01:00
Robert Beckebans
3b0dabe30a
Formatted code.
2012-12-08 18:20:13 +01:00
Robert Beckebans
8812f6f0a4
Merge branch 'linux' of https://github.com/RobertBeckebans/RBDOOM-3-BFG into linux
2012-12-07 21:25:01 +01:00
Robert Beckebans
bc6d7fbb8c
Fixed wrong assert
2012-12-07 21:24:45 +01:00
Robert Beckebans
3639ba0c7b
Everything compiles on Linux. Now we can fix the linker problems! :)
2012-12-07 18:29:47 +01:00
Robert Beckebans
948865123d
More Linux specific fixes, especially 64 bit
2012-12-07 17:06:44 +01:00
Robert Beckebans
55cc6b3946
Minifix for idCommonLocal
2012-12-07 00:23:27 +01:00
Robert Beckebans
1feaa335df
More compile fixes for Linux.
2012-12-07 00:09:53 +01:00
Robert Beckebans
9cc36a111e
More Linux specific fixes. idlib compiles on Kubuntu 12.10 64 bit
2012-12-06 21:31:33 +01:00
Robert Beckebans
37a6018233
Added some macro defines for Linux.
2012-12-06 01:00:05 +01:00
Robert Beckebans
afaf66ef40
Formatted code
2012-12-04 12:11:14 +01:00
Robert Beckebans
5e582222cf
Removed unused callstack traces API. All C++ files compile with MinGW.
2012-12-04 02:30:46 +01:00
Robert Beckebans
e0c79bd2d2
More work on MinGW support.
2012-12-03 23:55:27 +01:00
Robert Beckebans
180cb328a4
Added neo/cmake-eclipse-mingw-release.bat
2012-12-03 17:30:42 +01:00
Robert Beckebans
5e05fa58c3
Added Doom 3 GCC compile options.
2012-12-03 14:21:45 +01:00
Daniel Gibson
d949bc9410
Fix compiler warnings and errors in MinGW
...
many of the warnings -Wreorder and #includes with invalid path because of
case-errors (windows may not care, but linux does)
2012-12-03 09:29:14 +01:00
Daniel Gibson
948b3777eb
xinput.h for mingw
...
the one from the dx sdk is incompatible.. again..
2012-12-02 22:37:21 +01:00
Daniel Gibson
18139ebcc2
Remove unavailable includes
...
Why didn't MSVC complain about this?
2012-12-02 22:33:03 +01:00
Daniel Gibson
7cd400ad02
One more small change
...
.. before fighting with xinput
2012-12-02 16:20:23 +01:00
Daniel Gibson
e738de183b
Some more small changes for MinGW build
2012-12-02 06:00:08 +01:00
Daniel Gibson
25e9e8bf1d
Stubs for __asm in DXTEncoder.cpp to make it compile
...
TODO: needs implementation with intrinsics and/or plain C(++)!
2012-12-02 06:00:07 +01:00