Commit graph

91 commits

Author SHA1 Message Date
Daniel Gibson
430a8f5e95 POSIX: Show errormessage if loading a (Mod) .so failed, refs #318
.. but only if the file exists.
It's ok if mods don't have their own DLL/.so, but if they do have one
and loading fails it's interesting why they failed (e.g. no access
rights, 64bit lib with 32bit executable or other way around, missing
symbols due to wrong libc version, ...)

The same should be done for Windows, but that's still TODO.
2021-01-17 06:58:13 +01:00
Daniel Gibson
04a50e1927 Recreate s_scantokey_* tables in win_input.cpp to fix MinGW build
the tables contain character constants like ('รค') that are supposed to
be interpreted as ISO8859-1 or WINDOWS-1252 or sth, but that doesn't
seem to work with MinGW (anymore) - seems like it assumes UTF-8 by
default, and for some reason -finput-charset=ISO8859-1 doesn't help
either, it complains about multichar character constants then..

Anyway, now the table entries are represented as the corresponding
integer constants which seems to work as intended.

Fixes #238
2019-06-17 03:50:07 +02:00
Daniel Gibson
9a95a2a1cf Building with editor support (on Win w/ VS2017) works \o/
Editor also seems to start, didn't test much further.

Only tested 32bit Windows, I fear the editor code isn't 64bit clean..

I hope I haven't broken anything elsewhere..
2019-01-13 22:52:28 +01:00
Daniel Gibson
6a507c6a5b Windows: Don't put stdout.txt and stderr.txt into binary dir
It might not be writable.. which will cause game startup to fail.
Put them in My Documents/My Games/dhewm3/ instead, like the save games.
2019-01-07 15:06:59 +01:00
Daniel Gibson
fa363ab5ef Fallback to demo/ should work better now
i.e. also when not starting the game with +set fs_basepath /bla/
2019-01-07 15:06:59 +01:00
Daniel Gibson
84a70a3a05 Tell Windows we're High DPI aware, (hopefully) fixes #191
taken (with permission) from Yamagi Quake II, thanks a lot!
2018-07-14 20:54:21 +02:00
svdijk
dd082b78de Win32: Add an icon to the dhewm3 executable 2015-10-03 09:17:30 +02:00
Daniel Gibson
0327a42ad9 Fix input on Windows with SDL2 (fix #100)
Seems like the ::SetFocus() in main() screwed it up.
2015-09-28 15:35:57 +02: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
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
dhewg
ed121102f4 Add SDL2 support to sys/win32/SDL_win32_main.c 2012-07-20 17:34:38 +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
390b6a493d Try to find a steam install for the base path 2012-07-06 19:47:34 +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
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
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
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
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
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
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
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
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
bf30c8216a Get rid of GetExceptionCodeInfo()
Unused function is the Windows backend.
2012-01-03 18:14:20 +01:00
dhewg
f7915a5ffa Get rid of dead code in the Windows backend
Not used by anything.
2012-01-02 20:00:11 +01:00
dhewg
1af6da6fdd Make the printf() family on Windows print to stdout
SDL logs this into stdout.txt for us.
2012-01-02 15:44:41 -05:00
dhewg
b83868090c Use SDL GLimp and input implementations on Windows
The DirectX SDK is not required anymore.
2012-01-02 15:44:40 -05:00
dhewg
95233c470b Use BufferCommandText() in win_syscon.cpp
Get rid of the dependency of the local event queue.
2012-01-02 15:44:36 -05:00
dhewg
44b35ccf13 Make Sys_GetScanTable() only available on Windows
Sys_GetScanTable() and MapKey() are only used by the Windows backend
or the Windows-only tools.
Rename to Win_GetScanTable() and move MapKey() as Win_MapKey() to
win_input.cpp.
2012-01-02 15:44:35 -05:00
dhewg
5d69699edf Rename Posix_ConsoleInput() to Sys_ConsoleInput()
Sync with Windows implementation and add it to sys_public.h in
preparation to move the event queue to SDL.
2012-01-02 15:44:16 -05:00
dhewg
1ecf98416c Get rid of GLW_WM_CREATE
Another stub.
2012-01-02 15:44:05 -05:00
dhewg
73779eca39 Get rid of unused GLW_InitExtensions()
Unused forward declaration.
2012-01-02 15:44:02 -05:00