hurikhan
2d27c807d1
SDL2 support fix
2013-07-22 23:45:10 +08:00
Rohit Nirmal
c20218f9cd
Minor spelling fix.
2013-07-13 23:07:22 -05:00
Kevin Doyon
6407881cff
Fix SDL2 compile-errors, made it work on Win64
...
.. when compiled with MSVC2012
2013-05-02 21:13:06 +02:00
Yamagi Burmeister
9a9babf8d6
Add a new cvar "r_waylandcompat"
...
Commit 9e158470
set the SDL OpenGL attribut SDL_GL_ALPHA_SIZE to 0 since
the alpha channel is used by Wayland. But for X11 the GLX 1.4 specification
clearly states: "If the requested number of bits in attrib_list for a
particular color component is 0 or GLX_DONT_CARE, then the number of
bits for that component is not considered." So if SDL_GL_ALPHA_SIZE is
0 a framebuffer without an alpha channel is created. This is no problem
on the default GLX module due to a non standard implementation but
manifests with Nvidias GLX module. The consequence are render mistakes
like in game display showing static or the flashlight looking weird.
2012-11-13 23:33:00 +01:00
Daniel Gibson
8c6e4eb38a
Add support for norwegian keyboard layout
...
via "in_kbd norwegian". It's the '|' and 'ยง' chars (124, 167)
Fixes #33
2012-11-13 23:18:45 +01:00
Daniel Gibson
6d9a43cb23
On Linux/Unix, return EXE-path as base-path if BUILD_DATADIR fails
...
Using this path was the old behavior and is expected by many users.
2012-11-13 23:16:03 +01:00
Daniel Gibson
5936422d9d
Fix freezing of dedicated server window on Windows
...
The code was donated by motorsep, thanks!
2012-11-12 20:18:00 +01:00
Daniel Gibson
105fdb0624
Fix dedicated server for Windows
...
* the OpenAL function definitions mustn't include __declspec(dllimport)
=> fixed by pretending to compile OpenAL statically
* glimp.cpp shouldn't be used in dedicated-only mode (as it was already
the case on Linux and OSX)
=> No special handling for ID_DEDICATED needed in glimp.cpp, as it's not
used anyway
* add APIENTRY to every gl function in stub_gl.cpp for compatibility
with windows headers and MSVC
* remove GL/gl.h #include from win_local.h as it's not needed
* in qgl.h, when building dedicated server for windows, redefine WINGDIAPI
to nothing for SDL_opengl.h #include to get rid off __declspec(dllimport)
by using #pragma push_macro and pop_macro, because our stub is no dll.
Fixes https://github.com/dhewm/dhewm3/issues/39
2012-11-12 20:18:00 +01:00
Daniel Gibson
1f25568762
Remove duplicate functions from openal_stub.cpp + extern C
...
Some functions were duplicated, the only difference was a const in one
parameter. The definitions in the header were with const, so I kept
those versions.
Also, the functions in the header are pure C, so add extern "C",
this fixes issues with MSVC and the formerly duplicated functions.
2012-11-12 20:15:08 +01:00
Daniel Gibson
fa8f092e67
Unset key modifiers when regaining focus to unset ALT
...
There used to be a bug (discussed in #40 ), that ALT was still set after
using ALT-Tab. Thus when next pressing enter fullscreen was toggled.
This should now be fixed by unsetting the modifiers when focus is
regained (SDL_ACTIVEEVENT or SDL_WINDOWEVENT_FOCUS_GAINED).
2012-09-08 16:45:07 +02:00
dhewg
1b1787bb50
Disable the warning if the mouse grab request fails
...
This fails on some SDL drivers and just spams the console.
2012-07-28 12:54:25 +02:00
dhewg
9e15847083
Don't use alpha bits for the GL config
...
Wayland actually uses this.
2012-07-28 12:51:02 +02:00
dhewg
89071f1f57
Provide a stub for GLimp_GrabInput()
...
Fixes compilation of the dedicated server.
2012-07-20 21:04:04 +02:00
dhewg
918e06cf00
Add SDL2 support to sys/osx/DOOMController.mm
2012-07-20 17:41:40 +02:00
dhewg
ed121102f4
Add SDL2 support to sys/win32/SDL_win32_main.c
2012-07-20 17:34:38 +02:00
dhewg
454bebf99f
Add SDL2 support in sys/glimp.cpp
2012-07-20 17:34:37 +02:00
dhewg
4f2f855105
Add SDL2 support in sys/events.cpp
2012-07-20 17:34:36 +02:00
dhewg
b8765ccf22
Move GrabInput() and rename to GLimp_GrabInput()
...
SDL2 supports multiple windows, and the grabbing is set per
window, so move it to sys/glimp.cpp.
2012-07-20 17:34:34 +02:00
dhewg
6dcf07974d
Cleanup GrabInput()
...
Convert to bitflags to ease moving it.
2012-07-20 17:34:34 +02:00
dhewg
a75387c55e
Add SDL2 support in sys/threads.cpp
2012-07-20 17:34:33 +02:00
dhewg
5639720c1c
Add FindSDL2.cmake for SDL2
...
This is just a modified version of FindSDL.cmake
2012-07-20 16:43:39 +02:00
dhewg
63fdea82b4
Get rid of wglext.h
...
Good riddance.
2012-07-20 16:43:37 +02:00
dhewg
ac921bc99f
Get rid of editor specific win32 vars
...
We don't compile any mfc crap for our own good, so get rid of these.
2012-07-20 16:43:36 +02:00
dhewg
bf922dfc59
Get rid of glConfig.wgl_extensions_string
...
Unused and nobody cares.
2012-07-20 00:13:05 +02:00
dhewg
138b7b1def
Remove the ATI fragment shader emulation
...
This was only used by the r200 renderer on OSX.
2012-07-20 00:12:59 +02:00
dhewg
2cad07c38e
Delete util_stub.cpp
...
Unused.
2012-07-20 00:12:57 +02:00
dhewg
a96635219c
Fix pointer check/access in Sys_InitNetworking()
...
Reported by scaronni.
Fixes #25 .
2012-07-17 18:25:06 +02:00
dhewg
390b6a493d
Try to find a steam install for the base path
2012-07-06 19:47:34 +02:00
dhewg
90bd14564f
Remove redundant setenv() call
...
The version which overwrites existing envvars is just below.
2012-07-06 01:41:12 +02:00
dhewg
5a9c2006ff
Get rid of Posix_EarlyInit() and Posix_LateInit()
...
Since we don't have our own signal handler anymore, those two
init functions can be merged into the existing Sys_Init(), which
is already called by common->Init().
2012-07-06 01:39:01 +02:00
dhewg
0bc457063f
Get rid of the signal handler
...
SDL covers this via e.g. SDL_QUIT event on ctrl+c.
2012-07-06 01:31:27 +02:00
dhewg
d2b7eac843
Get rid of Sys_SetFatalError()
...
Unnecessary.
2012-07-06 01:24:25 +02:00
dhewg
33c841ef4c
Get rid of socks proxy code in win_net.cpp
...
That was never active.
2012-07-06 01:07:02 +02:00
dhewg
7c06aa16b8
Fix warnings in win_net.cpp
...
warning: variable โerrโ set but not used [-Wunused-but-set-variable]
warning: unused variable โlenโ [-Wunused-variable]
warning: format โ%dโ expects argument of type โintโ, but argument 3
has type โlong long unsigned intโ [-Wformat]
2012-07-06 01:07:01 +02:00
dhewg
d6dd8c636b
Fix sys/cpu.cpp for msvc 64bit
2012-07-06 01:06:59 +02:00
dhewg
84717833e1
Get rid of sysMemoryStats_t
...
Unused.
2012-07-06 01:06:56 +02:00
dhewg
68284f9a09
Get rid of empty sys/linux/dedicated.cpp
2012-07-06 01:06:56 +02:00
dhewg
d53c91b023
Get rid of useless files in sys/linux
2012-07-06 01:06:55 +02:00
dhewg
b073f281ad
Get rid of the SIGFPE handler
...
If shit happens, let it crash.
2012-07-06 01:06:55 +02:00
dhewg
9cbc9ff6db
Get rid of win_cpu.cpp
...
All unused now.
2012-07-06 01:06:54 +02:00
dhewg
b58f51dbfa
Get rid of Sys_FPU_StackIsEmpty()
...
Same as with Sys_FPU_GetState().
2012-07-06 01:06:53 +02:00
dhewg
0ccef1eba8
Get rid of Sys_FPU_GetState()
...
This was only implemented with MSVC style asm.
Comments suggest that it was used to help catch invalid FOV calculations,
which were probably only happening with ancient compiler bugs.
2012-07-06 01:06:53 +02:00
dhewg
93fdc96e60
Get rid of Sys_FPU_EnableExceptions()
...
No exceptions were ever enabled.
2012-07-06 01:06:51 +02:00
dhewg
65b13cb73e
Use a more modern way to set the fpu precision
2012-07-06 01:06:51 +02:00
dhewg
a4558bb080
Get rid of Sys_FPU_SetRounding()
...
Unused.
2012-07-05 21:31:49 +02:00
dhewg
0ef470de6c
Use common->Warning() in linux/main.cpp
2012-07-05 19:15:12 +02:00
dhewg
8f157e63db
Convert backslashes in the windows EXE path
2012-07-05 19:15:11 +02:00
dhewg
571f6b3d3b
Overhaul the windows BASE path
...
Look for "base" next to the binary first, then the vanilla
doom3 path (written to the registry by the original installer).
2012-07-05 19:14:13 +02:00
dhewg
f6c0e2a174
Split GetHomeDir()
...
Makes the WCHAR to char path code reusable.
2012-07-05 18:18:01 +02:00
Andre d
7a5b8b1ec0
Remove (faulty/outdated) video ram detection
2012-07-04 22:47:38 +02:00
dhewg
1da44eb856
Fix Sys_IsLANAddress() on *nix
...
Don't just convert the first char of the IP.
LAN clients now get properly detected and don't need to auth
against the master server.
2012-07-04 02:18:51 +02:00
dhewg
0b08240e02
Remove all OS specific gamepak code
...
Useless since there are no gamepaks.
2012-07-04 02:18:48 +02:00
dhewg
3e9545fb71
Overhaul the *nix based BASE path
...
Try BUILD_DATADIR first (build time setting), then the vanilla
doom3 path.
2012-07-04 02:18:44 +02:00
dhewg
b242041319
Make Sys_DLL_Load() on *nix non verbose on errors
...
Just like the windows port.
2012-07-04 02:18:44 +02:00
dhewg
3dad2151c5
Get the shared library suffix from the build system
2012-07-03 21:13:00 +02:00
dhewg
262df52cdd
Drop the CPU suffix from libraries on all platforms
2012-07-03 21:13:00 +02:00
dhewg
ff00686218
Provide a fallback for PATH_EXE on *nix
...
Less pain on BSD.
2012-07-03 21:12:59 +02:00
dhewg
14ba5b82c6
Use XDG Base Directories on *nix
...
See
http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html
2012-07-03 21:12:59 +02:00
dhewg
e55753e626
Introduce fs_configpath
...
Split fs_savepath for config files. This is in preparation for
moving the writable paths on *nix to $XDG_DATA_HOME and
$XDG_CONFIG_HOME.
Affected files: config.spec, *.cfg, doomkey, xpkey.
2012-07-03 21:12:58 +02:00
dhewg
8f6f1883ff
Use Library/Application Support/dhewm3 on OSX
2012-07-03 21:12:57 +02:00
Daniel Gibson
2375dd1588
Use My Documents/My Games/dhewm3 on windows
...
Includes savegames, configs, screenshots and so on.
And "My Documents" is actually CSIDL_PERSONAL, see
http://msdn.microsoft.com/en-us/library/windows/desktop/bb762494%28v=vs.85%29.aspx
This somehow matches the behaviour on Linux and OSX where this stuff is
saved in some kind of home-dir (e.g. ~/.doom3)
Taken (with kind permission) from Yamagi Quake II's Sys_GetHomeDir()
2012-07-03 21:12:57 +02:00
dhewg
478fa783f6
Unify Sys_*Path() into Sys_GetPath()
2012-07-03 21:12:56 +02:00
dhewg
3256783af1
Get rid of ID_DEMO_BUILD
...
There are no demo pk4s compatible to this 1.3.1 codebase.
2012-07-03 21:12:55 +02:00
dhewg
e2ca3d1f84
Get rid of sys_stub.cpp
...
Unused.
2012-07-03 21:12:54 +02:00
dhewg
2d69979be2
Use the portable getifaddrs() on *nix
...
Cleanup the OSX specific code in Sys_InitNetworking() and use it
for all *nix platforms.
Fixes nic detection on BSD.
2012-07-03 21:11:05 +02:00
dhewg
99864667a7
Use PATH_MAX for MAX_OSPATH on all platforms
...
The hardcoded 256 doesn't cut it.
2012-07-03 21:10:45 +02:00
dhewg
f000947d4e
Fixes issues with MacOSX.
...
- Fixes compiler errors with mismatching types in DoomController.mm
- Adds PPC_INTRINSICS fix to Simd_Altivec.h
2012-06-28 14:08:39 +02:00
dhewg
b9cc8548dc
Remove leftover X11 header
2012-06-15 18:25:48 +02:00
Daniel Gibson
6a23b17509
Work around broken libs that call setlocale(LC_ALL, "");
...
Because that can fuck up parsing floats if your locale uses ',' as a radix.
LADSPA plugins that may be used by ALSA do this. A PITA to debug.
2012-05-13 00:04:17 +02:00
dhewg
0e3500b919
Accept both alt keys for alt-enter
...
Reported by Ensiform.
2012-01-19 00:22:47 +01:00
dhewg
3e066baf91
Map the right alt key
...
SDLK_RALT was missing, it is independent of SDLK_MODE.
Reported by Ensiform.
2012-01-19 00:19:51 +01:00
dhewg
898f690fc4
This is dhewm 3
...
Rename project, now at https://github.com/dhewm
2012-01-14 20:06:05 +01:00
dhewg
db4aca78d6
Get rid of CPU_EASYARGS
...
Never use the event callbacks with mismatching prototypes.
2012-01-14 15:19:38 +01:00
dhewg
b7ce0ef149
CMake: Use config.h for BUILD_OS and BUILD_CPU
...
This fixes, among others, FreeBSD 64bit builds where the build
system used a "amd64" suffix and runtime "x86_64".
2012-01-14 15:19:12 +01:00
dhewg
545d98fc08
CMake: Create config.h
...
Use config.h for configure time settings.
2012-01-14 15:09:27 +01:00
dhewg
dca4721c8f
Get rid of the scons build system
...
This only works for linux and cmake works on all platforms.
Hopefully this prevents invalid reports.
2012-01-14 15:01:19 +01:00
dhewg
1a5499e6f5
Fix compilation of the dedicated server
...
Add missing OpenAL stubs.
2012-01-14 13:26:01 +01:00
dhewg
ad48afdbd7
Fix compilation via scons
...
SConscript.core was missing jpeg_memory_src.cpp.
Reported by ameyp.
Fixes #2 .
2012-01-11 18:56:38 +01:00
dhewg
1ce658e835
Get rid of memory status functions
...
Unused.
2012-01-08 12:24:58 +01:00
dhewg
fe7b32d47e
Get rid of dead prototype
2012-01-08 12:24:58 +01:00
dhewg
6a1d6cb842
Always allow multiple instances
2012-01-08 12:24:58 +01:00
dhewg
438685e6e6
Get rid of Sys_FlushCacheMemory()
...
Stub on all platforms.
2012-01-08 12:24:58 +01:00
dhewg
9542663097
Get rid of Sys_DefaultCDPath()
...
Stub on all platforms.
2012-01-08 12:24:58 +01:00
dhewg
79fa35d0ec
Get rid of ID_MCHECK
...
mcheck() is not thread safe, use MALLOC_CHECK_ or TCMalloc
instead.
2012-01-08 12:24:57 +01:00
dhewg
5f8712902c
Return at least 64MB VRAM in case the detection fails
2012-01-08 12:24:57 +01:00
dhewg
a35d8c08b6
Fix usage of wrong define in sys/cpu.cpp
2012-01-08 12:24:57 +01:00
dhewg
47e486b62a
Add SDL_win32_main.c
...
Don't link against SDLmain.[a|lib], always compile it.
We can use pure C MinGW cross compiled libraries with MSVC, and
this is the only static library used.
2012-01-07 19:01:53 +01:00
dhewg
b3085e03b4
Fix sys/win32/* for x86_64
2012-01-07 19:00:43 +01:00
dhewg
4927299cb9
Include malloc.h for alloca for MinGW
...
Newer versions of MinGW do not seem to require this, but older
ones do.
2012-01-07 15:40:22 +01:00
dhewg
989b812a6e
Cleanup DOOMController.mm
...
Cleanup headers and use MAXPATHLEN.
2012-01-05 00:24:16 +01:00
dhewg
6fa12c3a44
Get rid of the NSObject in DOOMController.mm
...
SDLmain.m does the bulk of the work for us, so get rid of
the DOOMController NSObject, move the quakeMain() contents to
main() and let SDL do its thing.
2012-01-05 00:24:16 +01:00
dhewg
532b642222
Get rid of checkOS() and checkDVD()
...
Former is already handled by cmake via -mmacosx-version-min=
and the latter is just a stub.
2012-01-05 00:24:15 +01:00
dhewg
8e5702ef36
Get rid of applicationShouldTerminate()
...
Redundant, already handled by SDL_QUIT event.
2012-01-05 00:24:15 +01:00
dhewg
23752a2cd2
Get rid of applicationDidFinishLaunching()
...
SDL already implements this for us and the assert()s are
already part of idlib.
2012-01-05 00:24:15 +01:00
spiral
ec0f836f41
Generate an .app bundle for OSX
...
Add missing SDLMain and icon/resource files to generated .xcodeproj
Now builds on Lion in XCode4 with the 10.6 SDK using LLVM-GCC4.2.
Also tested on WinXP in VS 9 2008 Professional, I don't appear to have
broken anything there, stuff like MACOSX_BUNDLE_INFO_PLIST is
effectively ignored.
2012-01-05 00:24:15 +01:00
spiral
6453bce10c
We don't need XOPEN_SOURCE deprecated content
...
Just what's in sys/ucontext.h specifically.
2012-01-05 00:24:15 +01:00
dhewg
1fed72fbb4
Get rid of Sys_DoPreferences()
...
The OSX backend was the only one utilizing this to set CVars
for the video mode.
Not required anymore since its now based on SDL.
2012-01-05 00:24:13 +01:00
dhewg
3c90c12605
Don't link against X11 libraries
...
Not required anymore. All backends use SDL based implementations
now.
2012-01-05 00:24:13 +01:00
dhewg
bf69f7ec76
Use SDL GLimp and input implementations on OSX
2012-01-05 00:24:13 +01:00
dhewg
8df54ffad2
Move OSX ATI_fragment_shader functions
...
Move the software implementation to
sys/glimp_ati_fragment_shader.cpp in preparation to move to
the SDL based GLimp and events.
2012-01-05 00:24:12 +01:00