Commit graph

179 commits

Author SHA1 Message Date
GoldenTails
4016a2e062 Crash backtrace logging for NEWSIGNALHANDLER. 2021-02-27 18:07:47 -06:00
James R
c0dbc562bb Fix floating point math 2020-11-07 13:48:37 -08:00
James R
515d7eeb9e Let's try an experiment: move the epoch forward as I_GetTime is called
This will make it even longer until time wraps around. Have you ever run a
srb2 server for 4 years straight?
2020-11-07 01:57:09 -08:00
James R
84ce53db60 Use high precision timer, replace I_GetTimeMicros with I_GetPreciseTime and I_PreciseToMicros 2020-11-07 01:31:24 -08:00
James R
425b56c288 Remove win32 specific timer 2020-11-06 14:14:12 -08:00
James R
8beee3761e Merge branch 'windows-console-go-brrr' into 'next'
Fix #178

Closes #178

See merge request STJr/SRB2!1112
2020-10-02 20:23:20 -04:00
James R
38d094d3f6 Merge branch 'fix-file-downloading' into 'next'
Fix bug where SRB2 would check size of disk from current directory instead of srb2home

See merge request STJr/SRB2!1121
2020-08-19 18:16:22 -04:00
GoldenTails
0a9c061fea Fix bug where SRB2 would check size of current directory instead of srb2home
Hopefully that fixes that one bug with weird filesize issues too
2020-08-18 17:34:32 -05:00
James R
f0a79df2b8 Use AsciiChar to get the input from windows console window 2020-08-13 21:57:36 -07:00
James R
e9748e5317 Merge branch 'clipboard-crash-fix-2' into 'next'
Fix buffer overrun in I_ClipboardPaste (resolves #205)

Closes #205

See merge request STJr/SRB2!1105
2020-08-09 21:06:18 -04:00
James R
a808294c0c Merge branch 'kill-cd-support' into 'next'
Kill CD support

See merge request STJr/SRB2!1102
2020-08-09 20:48:25 -04:00
Jaime Passos
9772bbeda1 Fix buffer overrun in I_ClipboardPaste 2020-08-08 15:36:01 -03:00
Steel Titanium
dff0e87e03 Kill CD support 2020-08-07 17:06:19 -04:00
James R
479bbeacbe Merge remote-tracking branch 'origin/next' into http-mserv 2020-07-11 17:41:46 -07:00
Steel Titanium
7d00255dc4 Merge branch 'master' into next 2020-07-06 12:13:00 -04:00
Steel Titanium
3946309ece Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2 into sal-oglshaderport
# Conflicts:
#	src/hardware/r_opengl/r_opengl.c
2020-06-17 18:15:07 -04:00
lachwright
fad82265e0 Allow macOS builds to be launched through Steam 2020-06-12 01:19:06 +08:00
Steel Titanium
3dd89f67fa Fix no previous prototype for TimeFunction 2020-06-08 19:56:24 -04:00
Hannu Hanhi
da98ea242e Merge remote-tracking branch 'upstream/next' into shaders-224-next-merge 2020-06-07 20:01:05 +03:00
LJ Sonic
715cb857f5 Merge branch 'next' into 'better-download'
# Conflicts:
#   src/sdl/i_system.c
#   src/win32/win_sys.c
2020-06-01 08:16:53 -04:00
SwitchKaze
46191cade7 Update to 2.2.4 2020-05-22 16:47:51 -05:00
Louis-Antoine
db85c62c6f Allow resuming the most recent file transfer 2020-05-19 11:28:24 +02:00
James R
a80c7a26dd Wait for threads before SDL_Quit (lol) 2020-05-13 17:25:52 -07:00
James R
886bd34be5 Multithreading in my SRB2??? 2020-05-13 17:21:19 -07:00
Monster Iestyn
3ce4c1b789 Fix logging on Mac
These fixes were suggested by Sveciaost on #mac-users on Discord
2020-05-10 16:47:01 +01:00
Hannu Hanhi
1b6e65b91c Implement I_GetTimeMicros without affecting I_GetTime behaviour details 2020-05-02 23:14:20 +03:00
Hannu Hanhi
64a153fdee Render stats 2020-05-02 23:13:08 +03:00
SwitchKaze
6415e10216 Merge branch 'next' of https://github.com/STJr/SRB2 into next-luacolors 2020-02-23 11:50:13 -05:00
James Hale
56b67a3b4f Custom skincolors 2020-02-21 21:56:39 -05:00
James R
7060083db5 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
Alam Ed Arias
0caa08defd fread and fwrite use size_t, not int 2019-12-27 13:08:26 -05:00
James R
e19d0877e8 Merge branch 'time' into 'master'
haha log files

See merge request STJr/SRB2!567
2019-12-26 21:43:46 -05:00
James R
9d28351b5c I'm an idiot 2019-12-24 11:14:21 -08:00
James R
d1f12347cc Merge remote-tracking branch 'origin/master' into time 2019-12-24 11:02:31 -08:00
James R
25525a6aae symlink latest-log.txt on nix, copy to the real log file everywhere else 2019-12-23 18:20:04 -08:00
James R
8a23ff0bc8 Handle log file in parent properly 2019-12-13 16:51:49 -08:00
James R
553ad46c74 Add this back for Windoodoo because I'm an idiot 2019-12-13 15:04:31 -08:00
James R
8bea7f6dbc Rename signal caught message to be more obvious 2019-12-12 22:01:16 -08:00
James R
838850ffc1 Fix signal handler setup error reporting 2019-12-12 21:57:54 -08:00
James R
35053adfb2 Rename I_StartupKeyboard to I_RegisterSignals and call it in a sane place 2019-12-12 21:30:35 -08:00
James R
72ee91702c Kill child when wait fails, so I_Error exits both 2019-12-12 21:21:25 -08:00
James R
f34886850f Fix idiot mistake 2019-12-12 21:20:51 -08:00
James R
6dcdb8d951 Move everything to i_system.c
This also simplifies things; SDL isn't initialized in the parent process.
2019-12-12 15:08:27 -08:00
James R
7c383e4a1f nix: Fork before game code and wait to catch signals and coredumps
Ditched signal_handler to avoid worrying about async-signal-safe functions.
D_QuitNetGame is not called, so players whose programs are interrupted by a
signal will time out from the server. Because the game runs in a child process,
the window can close before the "Signal Caught" text box appears.

"(core dumped)" is also included in the message if core dumping could be
determined.
2019-12-11 23:46:57 -08:00
James R
0ff421d001 Move I_ShutdownConsole to I_ShutdownSystem 2019-12-11 22:10:22 -08:00
Steel Titanium
d415cd5c6d
Update copyright date on source files 2019-12-06 13:49:42 -05:00
toaster
2d1a574e09 * Add a death animation for killing the Metal object, in case somebody wants to Lua up a Sonic CD style race finish for the Metal object, or in case of the following...
* Add an alternate DEMOMARKER for ending the Metal Recording on death, which kills the Metal object as well.
* Add some more relevant exceptions to the "most objects are removed when touching a deathpit" thing, primarily for the sake of ghosts and Metal playback.
2019-10-29 17:38:14 +00:00
Steel Titanium
6a870b4467
Various of changes
Changed any instance of "joystick" in strings to "gamepad"
Renamed some cvars
Added a define for MAX_JOYSTICK
Added back the missing command line params.
2019-09-23 22:46:44 -04:00
Steel Titanium
dfee7efd33
Merge branch 'master' into internal-hotplug-stableid 2019-09-23 00:44:34 -04:00
Alam Ed Arias
9d64ee88a0 Be clear on what FALLTHRU we really want 2019-09-09 15:02:13 -04:00
Steel Titanium
555b4e1766
Fix function being redefined 2019-09-08 19:39:23 -04:00
Steel Titanium
995ab1c84d
Merge branch 'master' into internal-hotplug-stableid
Just merged in known working code, note that I haven't tested it, so I have no idea if it compiles still.
2019-09-08 01:55:36 -04:00
Alam Ed Arias
92a954609d Merge branch 'public_next' into private 2019-08-08 23:41:19 -04:00
Alam Ed Arias
5a79a446df Tested to be compile with Mingw64 9.1.0 2019-08-08 21:25:46 -04:00
Monster Iestyn
7ae6d5ee8c Merge branch 'public_next'
# Conflicts:
#	src/doomstat.h
#	src/g_game.c
2019-03-28 14:19:02 +00:00
Steel Titanium
9542a47f7f New -noxinput and -nohidapi command line parameters. 2019-03-03 22:57:09 -05:00
Monster Iestyn
a93e96c75b Merge branch 'public_next'
# Conflicts:
#	src/sdl12/Srb2SDL-vc10.vcxproj
#	src/sdl12/Srb2SDL-vc9.vcproj
#	src/sdl12/macosx/Srb2mac.pbproj/project.pbxproj
#	src/sdl12/macosx/Srb2mac.xcodeproj/project.pbxproj
2019-03-02 20:51:15 +00:00
wolfy852
97de2ae4f6 Stop Linux servers from hanging every 34 hours 2019-03-01 00:07:58 -06:00
mazmazz
075f28b7c8 WIP 20190101 merge
d_netcmd.c
filesrch.c
m_menu.c
p_setup.c
p_spec.c
r_data.c
r_main.c
r_things.c
w_wad.c
w_wad.h
2019-01-02 01:09:15 -05:00
mazmazz
c49a5ed8d2 Better I_InitJoystick log message 2018-12-14 06:14:21 -05:00
mazmazz
e548f6f139 Don't override an already-active controller
* Menu improvements to tell the user that they can't set a controller if it's already active
2018-12-14 05:02:41 -05:00
mazmazz
3b6de810e1 Lots of changes to better support hotplugging and unstable device indexes
* Don't save cv_usejoystick/2 because hotplugging changes can be made invalid by next run
* Properly set cv_usejoystick/2 for menu toggling
* Force-disable a player's joystick if setting another player's joystick to the same device
* Properly set cv_usejoystick/2 value of BOTH target player AND other players when hotplugging and unplugging
2018-12-14 03:58:07 -05:00
mazmazz
6b9fe87b60 Properly handle unstable device indexes for hotplug 2018-12-14 01:45:18 -05:00
mazmazz
44d6a1d236 Attempt to handle unstable device IDs 2018-12-14 00:22:25 -05:00
mazmazz
216e710b87 Improve hotplug edge case with changing device indexes; return proper joy_open output on error 2018-12-13 23:52:04 -05:00
mazmazz
14cde2d227 Change joystick log messages to DBG_GAMELOGIC 2018-12-13 23:26:07 -05:00
mazmazz
e81f05c496 Handle unstable device index when hotplugging controller 2018-12-13 23:09:05 -05:00
mazmazz
60afce5771 Disable XINPUT before initing the joy subsystem 2018-12-06 14:03:46 -05:00
mazmazz
6694b7d679 Controller hotplugging by always keeping joy subsystem on (thanks WOLFS)
(with log messages)
2018-12-06 10:54:58 -05:00
Digiku
631f6ed406 Merge branch 'joystick-juggling' into 'master'
Joystick juggling

See merge request STJr/SRB2!355
2018-12-04 11:51:55 -05:00
mazmazz
8851f39b84 Use static joyname instead of malloc 2018-12-03 12:35:12 -05:00
mazmazz
19d19543b7 Copy string from SDL_JoystickNameForIndex before the subsystem is shut down 2018-12-03 05:37:07 -05:00
Monster Iestyn
a63ba7084a Disable the axis parts of I_GetJoystickEvents and its player2 counterpart.
(This is what I should have done in the first place)
2018-12-02 17:42:51 +00:00
Monster Iestyn
08af33c51f Add myargmalloc boolean to detect whether we allocated myargv ourselves or not, so we don't free myargv if we didn't 2018-11-23 19:12:48 +00:00
Steel Titanium
fe43deacec Merge branch 'master' into responsefile-fix 2018-11-22 23:02:20 -05:00
Monster Iestyn
e4f157786c Merge branch 'public_next'
# Conflicts:
#	src/Makefile
#	src/doomtype.h
#	src/hardware/hw_clip.c
#	src/hardware/hw_main.c
#	src/sdl12/sdl_sound.c
2018-11-10 19:18:34 +00:00
Monster Iestyn
51df32dd3d Merge branch 'gcc-compiling-cleanup' into 'master'
Compiling cleanup and fixes

See merge request STJr/SRB2!311
2018-11-10 13:56:17 -05:00
Monster Iestyn
268bde3fdf Merge branch 'public_next'
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
#	src/dehacked.c
#	src/g_game.h
#	src/hardware/hw_draw.c
#	src/hardware/hw_main.c
#	src/lua_baselib.c
#	src/lua_hook.h
#	src/lua_hooklib.c
#	src/lua_hudlib.c
#	src/lua_libs.h
#	src/lua_maplib.c
#	src/lua_script.c
#	src/m_misc.h
#	src/p_mobj.c
#	src/s_sound.c
#	src/sdl12/mixer_sound.c
#	src/w_wad.c
2018-11-10 15:41:57 +00:00
Monster Iestyn
0bdbdd1b1e Remove FUNCMATH from functions with a void return value or args, or examine variables other than their args (which could be modified) 2018-11-08 16:26:55 +00:00
Steel Titanium
5a0cfc10f4 Update copyright info on some files 2018-11-01 14:47:19 -04:00
Monster Iestyn
291ebf302c Merge branch 'public_next'
# Conflicts:
#	src/Makefile
#	src/lua_script.c
#	src/p_user.c
#	src/sdl/i_system.c
#	src/v_video.c
#	src/w_wad.c
2018-10-10 14:51:34 +01:00
Sryder
497314fdc4 Tiny fix so that joystick2 being closed can let the JoystickSubSystem close before game close.
No memory leak here, just a very tiny thing I noticed.
2018-10-09 19:43:18 +01:00
Steel Titanium
f88708bb75 Fix the weird indentation 2018-09-21 12:05:52 -04:00
Steel Titanium
68ec811909 Rearrange the code.
Thanks again MonsterIestyn!
2018-09-21 11:26:08 -04:00
Steel
af58ba9ae3 Remove this that somehow slipped in. 2018-09-21 07:21:49 -04:00
Steel
be74b4e58b Fix up errors with buildbots 2018-09-21 07:16:54 -04:00
Steel Titanium
378495cb2b Add some stuff 2018-09-20 18:33:50 -04:00
Steel Titanium
a53f036149 Use MemAvailable instead 2018-09-20 18:30:46 -04:00
Steel Titanium
5c8c35e773 Deallocate when I_Quit() is called instead. 2018-06-23 15:09:11 -04:00
Monster Iestyn
61923f3b1f Merge branch 'public_next'
# Conflicts:
#	src/sdl/i_system.c
2018-03-04 19:18:13 +00:00
Monster Iestyn
4a0305eec8 more I_GetFreeMem fixes: don't attempt to set *total to 0L if total itself is NULL 2018-02-23 20:40:19 +00:00
Monster Iestyn
1216c9da18 Use __linux__ instead of LINUX/LINUX64
Turns out compiling for Linux 32-bit using the Makefiles never actually defines LINUX! Apart from that, most of the existing Linux-specific code in SRB2's source code (except for tmap.s) actually uses __linux__ instead anyway
2018-02-23 20:21:16 +00:00
Monster Iestyn
75bc76e9b4 Remove all traces of "srb2.wad" support, since it is no longer needed now that srb2.pk3 is the IWAD (...IPK3?). srb2.wad cannot exactly be a pk3 file after all.
Additionally, rename any remaining "srb2.srb" to "srb2.pk3" in the main source code files. Not sure whether to bother dealing with srb2.srb/srb2.wad mentions in project files for now.
2017-12-07 18:26:12 +00:00
toaster
49a1266ccc Merge branch 'sal-misc-stuff' into 'master'
Sal misc stuff (state overwriting, gamepad tweaks)

See merge request STJr/SRB2Internal!116
2017-11-02 16:35:12 -04:00
toasterbabe
ead8fd6bf7 Update some strings that say "joystick". 2017-10-30 23:23:52 +00:00
toasterbabe
50d6208913 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into FileManagement 2017-10-21 14:28:44 +01:00
wolfy852
93584f6811 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal into FileManagement 2017-10-07 14:52:40 -05:00
Monster Iestyn
52620ac9b1 Obliterated OS/2 2017-10-07 18:11:14 +01:00
Monster Iestyn
49542cdaa1 Remove XBOXSTATIC and FILESTAMP, since only the XBOX port needed them 2017-09-29 19:46:23 +01:00
Monster Iestyn
a33bb70a0c Removed all support for Dreamcast, XBox, PSP, PS3, GP2X, Wii, and WinCE from files in the sdl/ folder. If you wanted these ports, use the SDL 1.2 code in sdl12
Also removed GP2X setup from sdl/MakeNIX.cfg, use sdl12 for that too
2017-09-16 20:26:04 +01:00