Commit graph

220 commits

Author SHA1 Message Date
Kp 2cea05d0a7 Move SysRecordDemoNameTemplate to CArg 2015-12-24 04:01:26 +00:00
Kp 63cd2dbb6b Move SysPilot to CArg 2015-12-24 04:01:26 +00:00
Kp 584e2ce408 Move SysHogDir to CArg 2015-12-24 04:01:26 +00:00
Kp 9f1abe1910 Move SndNoMusic to CArg 2015-12-24 04:01:26 +00:00
Kp bb3a386b47 Move GfxSkipHiresFNT to CArg 2015-12-24 04:01:26 +00:00
Kp 23bb4c5826 Move SysNoNiceFPS to CArg 2015-12-24 04:01:26 +00:00
Kp 28ee4c1804 Move DbgUseOldTextureMerge to CArg 2015-12-18 04:08:24 +00:00
Kp 900bebe799 Move DbgGlRGBA2Ok to CArg 2015-12-18 04:08:24 +00:00
Kp fa17246b7b Move DbgGlLuminance4Alpha4Ok to CArg 2015-12-18 04:08:24 +00:00
Kp 7022d20b1e Move DbgGlGetTexLevelParamOk to CArg 2015-12-18 04:08:24 +00:00
Kp 4a280e4556 Move DbgGlReadPixelsOk to CArg 2015-12-18 04:08:24 +00:00
Kp b3e6dd3eb5 Move DbgGlIntensity4Ok to CArg 2015-12-18 04:08:23 +00:00
Kp cdae6cad4d Move DbgBpp to CArg 2015-12-18 04:08:23 +00:00
Kp 26e948d5f1 Uninline namespace dsx 2015-12-13 18:00:49 +00:00
Kp dc8c0323d8 Uninline namespace dcx 2015-12-13 18:00:49 +00:00
Kp 8109379fdd Use inline namespace dsx for similar/misc/ 2015-12-13 18:00:48 +00:00
Kp b1ec69a3a2 Move CtlNoJoystick to CArg 2015-11-26 02:56:55 +00:00
Kp 7153ec69a9 Move SndNoSound to CGameArg 2015-11-24 04:05:36 +00:00
Kp a579f75d05 Move SndDisableSdlMixer to CGameArg 2015-11-24 04:05:36 +00:00
Kp ed2fa6f76a Remove unused PHYSFSX_getFreeDiskSpace 2015-11-24 04:05:35 +00:00
Kp e33f7f751b Move SysShowCmdHelp to CGameArg
Both games support SysShowCmdHelp.  Move it to the common structure.
2015-11-24 04:05:35 +00:00
Kp d4511b3128 Move SysNoHogDir to CGameArg
Both games support SysNoHogDir.  Move it to the common structure.
2015-11-24 04:05:35 +00:00
Kp 9981dc622e Move SysMissionDir to CGameArg
Both games support SysMissionDir.  Move it to the common structure.
2015-11-24 04:05:35 +00:00
Kp 64dee5d52a Move SysMaxFPS to CGameArg
Both games support SysMaxFPS.  Move it to the common structure.
2015-11-24 04:05:35 +00:00
Kp 5def3b0733 Fix Valgrind warning in PHYSFSX init 2015-10-24 03:13:11 +00:00
Kp 21057db809 Move DbgSafelog, DbgVerbose to CArg 2015-10-18 21:01:21 +00:00
Kp 7b28dc7110 Remove PHYSFSX_getRealPath assert(*stdPath!='/')
If the user configures the jukebox to play music from outside the
virtual directory, then stdPath can be absolute.
2015-10-18 21:01:19 +00:00
Kp 03b57abff0 Add $D*X_REBIRTH_HOME and $REBIRTH_HOME to override default path
Previously, Rebirth on __unix__ always set the write directory to
"~/.d*x-rebirth" (or "~/Library/Preferences/D*X Rebirth/" on Mac).  Add
$D*X_REBIRTH_HOME and $REBIRTH_HOME to override it.  If
$D*X_REBIRTH_HOME is set, use that.  If not, then try $REBIRTH_HOME.  If
that is also unset, then use the hardcoded default.
2015-10-18 00:34:00 +00:00
Kp a0919bf345 Add support for -add-missions-dir 2015-10-11 22:21:00 +00:00
Kp 02754f9ada Reduce PHYSFSX_getRealPath length checks 2015-10-11 22:21:00 +00:00
Kp a37bae4b4f Track output size for PHYSFSX_getRealPath 2015-10-11 22:21:00 +00:00
Kp 927618e650 Remove useless PHYSFS_eof tests
Each test triggers a system seek call.  EOF will be signalled by
PHYSFSX_fgets returning nullptr.
2015-10-09 02:46:11 +00:00
Kp a4826a2f75 Defer PHYSFS_tell in PHYSFSX_fgets 2015-10-09 02:46:11 +00:00
Kp 29f79f0a6b Enable -notitles for Descent 2 2015-10-09 02:46:09 +00:00
Kp da4d1e0670 Remove bool SysNoHogDir on non-unix 2015-09-22 02:28:38 +00:00
Kp 80f47ec7d9 Cache PHYSFS writedir/separator 2015-09-22 02:28:38 +00:00
Kp 204b608fa6 Normalize MACH&&APPLE vs APPLE&&MACH 2015-09-13 20:23:05 +00:00
Kp be3ab3bd81 Use range_for in PHYSFSX_checkMatchingExtension 2015-08-14 03:02:04 +00:00
Kp fa9f2e626d Move DbgShowMemInfo to CArg
Members of Arg are not visible to common code, so common/mem/mem.cpp
broke during the -Wodr cleanup.

Reported-by: zicodxx <https://github.com/dxx-rebirth/dxx-rebirth/issues/114>
Fixes: 6bd93e466f ("Guard args.h for LTO -Wodr")
2015-08-11 03:05:55 +00:00
Kp a58e8f87a0 Move similar/misc/hash.cpp -> common/misc/hash.cpp 2015-07-18 21:01:56 +00:00
Kp 6bd93e466f Guard args.h for LTO -Wodr 2015-07-18 21:01:56 +00:00
Kp 4c200342dd Use range_for for PHYSFS archive types 2015-07-18 21:01:55 +00:00
Kp 968cdbecf4 Add non-aborting UserError for user-caused fatal errors 2015-06-16 03:15:40 +00:00
Kp 29f239d6b1 Raise PHYSFSX_exists bool check to caller
All callers use a constant value, so raise the check into the caller to
let the optimizer delete the unnecessary branch.
2015-05-09 17:39:02 +00:00
Kp fc4b686d9d Store PHYSFS_list element count in list when needed 2015-05-09 17:38:57 +00:00
Kp c3925353fd Use null_sentinel_iterator for PHYSFS_list_t 2015-04-26 20:15:51 +00:00
Kp 143c536c77 Use PHYSFS_list_t for more functions 2015-04-26 20:15:50 +00:00
Kp 84c638ed64 Move PHYSFS_list_t to separate header 2015-04-19 04:18:49 +00:00
derhass 639b569496 Merge branch 'unification/master' into unification/syncgl_v2
Conflicts:
	similar/arch/ogl/gr.cpp
	similar/misc/args.cpp
2015-03-23 20:18:17 +01:00
Kp 7bf49fe551 Fix clang -Wmissing-braces warnings 2015-03-22 18:49:21 +00:00
Kp 08f6ad4bc7 Enable nested INI files 2015-03-22 18:49:21 +00:00
Kp 098bd2a9df Move exception std::string 2015-03-22 18:49:21 +00:00
Kp 9ddea5f570 Reduce lifetime of Args 2015-03-22 18:49:20 +00:00
derhass 2cd73b6dfe Import the syncgl patch based on 0.58.1 into unification code base
I also changed the command line arguments a bit, gl_syncmethod and
gl_sycnwait are used now. Furthermore, I added the ew mode AUTO. This is
a conservative mode and the default for now: if GL_ARB_sync is available,
use the FENCE_SLEEP mode, otherwise, disable it completely.

Conflicts:
	include/args.h
	misc/args.c
	similar/arch/ogl/gr.cpp
2015-03-22 18:17:11 +01:00
Kp 07869d9dba Add automatic demo recording
Various users want automatic demo recording.  Add new command line options:
	-auto-record-demo	start recording on level entry
	-record-demo-format	set demo name automatically

For -record-demo-format, specify a template containing any mix of strftime
insertions, variable insertions, and literal text.  As a special case, specify
"." to use the builtin template "%Y%m%d.%H%M%S-$p-$m".  Most users should use
".".  Supported variables:
	$p	name of pilot recording the demo
	$m	name of msn/mn2 file played

Suggested by jeffersoncarpenter in https://github.com/dxx-rebirth/dxx-rebirth/pull/33, but implemented by vLKp.
2015-02-28 19:36:02 +00:00
Kp 03576a28c2 Pass PHYSFSX_* file extensions as counted array 2015-02-14 22:48:28 +00:00
Kp 91cc111295 Provide SndDisableSdlMixer=true if !USE_SDLMIXER
Accept -nosdlmixer as a no-op in !USE_SDLMIXER builds.
2015-02-08 17:43:29 +00:00
Kp 4c8f3a47b5 Convert frequently used casts to C++ casts 2015-02-05 03:03:49 +00:00
Kp d2f0bdc867 Exit cleanly on bad command line arguments 2015-01-28 03:42:53 +00:00
Kp 3ca442cb33 Use arg_port_number for -udp_hostport 2015-01-25 05:32:44 +00:00
Kp 9597147283 Centralize argument port number conversion 2015-01-24 19:16:35 +00:00
Kp 6bc48b7876 Add option -no-tracker to suppress tracker for one run 2015-01-24 19:16:35 +00:00
Kp 18a64e4281 Use RAII for PHYSFS_enumerateFiles result 2015-01-23 03:55:05 +00:00
Kp e8a80d32cb Refactor PHYSFSX_findFiles 2015-01-23 03:55:05 +00:00
Kp f7815810e8 Use RAIIPHYSFS_File to manage PHYSFS_File
Fixes a few leaks on error paths.
2015-01-17 18:31:42 +00:00
Kp 68d705a85a Use bool conversion to test PHYSFS_File pointer 2015-01-17 18:31:42 +00:00
Kp 8c27a7d68e Require known size for PHYSFSX_fgets 2015-01-12 00:26:03 +00:00
Kp 98acd3e261 Poison PHYSFSX_fgets buffer on read failure 2015-01-12 00:26:02 +00:00
Kp 7c8c55b80c Clean PHYSFSX_fgets buffer uniformly 2014-12-20 04:36:10 +00:00
Kp 690fc5276c Propagate for variables in similar/misc/physfsx.cpp 2014-09-26 02:42:12 +00:00
Kp 84e5cee376 Propagate for variables in similar/misc/args.cpp 2014-09-26 02:42:12 +00:00
Kp 5571cf75ef Ignore -udp_myport requests for reserved port 2014-09-17 02:16:33 +00:00
Kp e8f4b20d1d Use special type for PHYSFSX_fgets 2014-09-07 20:07:20 +00:00
Kp 07176ece8b Add Valgrind poison stubs 2014-09-07 19:39:18 +00:00
Kp b29f2ef7bd Replace hashtable with std::map 2014-08-02 00:46:56 +00:00
Kp bd1c6d8c5d Reduce header includes of physfsx.h 2014-07-22 23:48:23 +00:00
Kp 36685d3938 Fix off-by-one bugs in bmread workaround 2014-07-02 02:29:35 +00:00
Kp deb700950f Work around bmread use of uninitialized memory
bmread copies from a stale pointer into a local buffer.  If the stale
pointer points to null bytes, this is stupid but harmless.  If the stale
pointer points to a large run of non-null bytes, this crashes the game.
Modify PHYSFSX_fgets to clear the unused portion of the return buffer to
work around this bmread bug.  Otherwise using shareware data crashes the
game at startup.
2014-06-28 23:30:46 +00:00
Kp ecce4c6745 Ignore INI lines that start with ; 2014-06-22 21:56:41 +00:00
Kp b3c953375c Read lines in blocks 2014-06-22 21:56:03 +00:00
zico c96aece6d2 Removed PARALLAX banner from source files that were not released by PARALLAX; most importantly C source code translated from Assembler and args.cpp which was rewritten from scratch 2014-06-12 10:41:03 +02:00
zico ad7cb106bc Changed custom D1X license to GPLv3 2014-06-01 19:55:23 +02:00
Kp 094dfbf3d4 Reduce header inclusions 2013-12-31 03:22:03 +00:00
Kp facb6a3598 Add console prints of PhysFS search path changes 2013-12-28 18:16:19 +00:00
Kp 7fb4c6307f Add debug option -no-grab to prevent window grabbing 2013-12-22 20:56:55 +00:00
Kp cb4fd7c1b4 Compact known file extension storage 2013-12-13 03:58:01 +00:00
Kp 4dfceab50b Factor out file extension filtering 2013-12-13 03:51:14 +00:00
Kp 322c61ef01 Remove use of heap-based splitword 2013-12-08 21:43:53 +00:00
Kp dd6a89221b Move demo file mount paths onto PHYSFSX_removeArchiveContent stack 2013-12-08 18:26:20 +00:00
Kp 11dc06b462 Move file search paths onto PHYSFSX_removeArchiveContent stack 2013-12-08 18:26:20 +00:00
Kp 04fb0c721c Move demo file mount paths onto PHYSFSX_addArchiveContent stack 2013-12-08 18:26:20 +00:00
Kp 0b99c6abf6 Move file search paths onto PHYSFSX_addArchiveContent stack 2013-12-08 18:26:20 +00:00
Kp 75c229c6bf Normalize con_printf newline usage 2013-12-07 21:13:37 +00:00
Kp a2cec5d71f Switch PHYSFSX_fgets to auto-sized variant where possible 2013-12-07 18:39:19 +00:00
Kp a899b9b945 Restrict ini arguments to 1024 char per line 2013-12-06 03:28:59 +00:00
Kp f1f4bb9db6 Diagnose missing/invalid arguments 2013-12-01 22:42:11 +00:00
Kp d3637e7524 Invert sense of SysUseNiceFPS 2013-12-01 22:37:21 +00:00
Kp 2e8bfb06f1 Store arguments in vector<string> 2013-12-01 22:37:21 +00:00
Kp e30f548d60 Invert sense of DbgAltTexMerge 2013-11-24 22:57:36 +00:00
Kp 761795e4c8 Invert sense of DbgBigPig 2013-11-24 22:57:36 +00:00
Kp 3b49e65f95 Invert sense of DbgUseDoubleBuffer 2013-11-24 22:57:36 +00:00
Kp bbb9214e0e Invert sense of hires/lowres options 2013-11-24 22:57:36 +00:00
Kp 8899120312 Remove SndDisableSdlMixer when mixer=0 2013-11-24 22:57:36 +00:00
Kp a6b1bd58a2 Use MALLOC consistently 2013-10-26 03:50:27 +00:00
Kp f17768b773 Move similar/misc/physfsx.c -> similar/misc/physfsx.cpp 2012-11-11 22:12:51 +00:00
Kp 5f842455d7 Move similar/misc/hash.c -> similar/misc/hash.cpp 2012-11-11 22:12:51 +00:00
Kp 17557fb63b Use CALLOC for hashtable_init 2013-10-20 02:36:16 +00:00
Kp ed0bc808f5 Fix memory leak on realloc failure in PHYSFSX_* 2013-10-20 02:34:43 +00:00
Kp 3c05b04629 Move similar/misc/args.c -> similar/misc/args.cpp 2013-10-05 23:16:52 +00:00
Kp aa9127e3c1 Enable -Wwrite-strings 2013-09-15 21:34:03 +00:00
Kp 6be4dc01c5 Pass non-const string to putenv 2013-08-29 22:52:30 +00:00
zico 40c5f10e20 Added definition of DESIGNATED_GAME_FPS as 30 and DESIGNATED_GAME_FRAMETIME based on the former. We use those for d_tick_count intervals and to scale other parts that have never been properly aligned to FrameTime before. In that regard, Release builds will take DESIGNATED_GAME_FPS as MINIMUM_FPS for -maxfps argument 2013-08-08 22:07:29 +02:00
Kp 0d26464bfa Simplify AppendIniArgs 2013-08-03 17:45:22 +00:00
Kp 3c5c8a8068 Make arg processing static 2013-08-03 17:45:22 +00:00
Kp d1479abb2e Remove unused FindResArg 2013-08-03 17:45:22 +00:00
Kp 4577dd3977 Merge branch 'd2x-rebirth/master' into unification/master 2013-07-21 21:34:46 +00:00
Kp a1ba420031 Mark various parameters and variables as const 2013-07-20 23:12:24 +00:00
Kp 8d6698b4e6 Move */misc/args.c -> similar/misc/args.c 2013-03-03 01:03:33 +00:00
Kp 299b47656b Move */misc/hash.c -> similar/misc/hash.c 2013-03-17 23:01:31 +00:00
Kp 68fec5f94a Move */misc/physfsx.c -> similar/misc/physfsx.c 2013-03-17 23:01:31 +00:00