979 Commits

Author SHA1 Message Date
Fabian Greffrath
5264af7f74
add atexit() sequence priorization (#389)
* add atexit() sequence priorization

Mostly taken from DSDA-Doom, thanks @kraflab.

* make absolutely sure Z_Close (destroys zone memory) is called after everything else
2021-12-21 10:32:16 +01:00
Roman Fomin
1405f92de9
undo new_sync interpolation fix (#385) 2021-12-17 15:48:21 +01:00
Roman Fomin
7df31b1203
more correct way to fix demowarp/demoskip (#384)
* more correct way to fix demowarp/demoskip

* remove redundant declaration
2021-12-17 15:48:07 +01:00
Roman Fomin
9068327662
fix player mobj is always in S_PLAY_RUN1 state in complevel boom (#381)
* fix player mobj is always in S_PLAY_RUN1 state in complevel boom

* add comment
2021-12-17 15:47:14 +01:00
Roman Fomin
35f869f4d1
set demo_insurance = 0 (#380)
* set demo_insurance = 0

* keep original code

* remove default_demo_insurance
2021-12-17 15:47:00 +01:00
Fabian Greffrath
1241bf146c
add a signal handler to exit gracefully on fatal signals (#379)
* attempt to write out demo that lead to raising a fatal signal

* call I_Error() in I_SignalHandler()

it gets called by G_CheckDemoStatus() anyway
2021-12-17 15:46:47 +01:00
Roman Fomin
703719854a
Enable Fluidsynth support on Windows (#350)
* remove snd_card and mus_card (Allegro)

* add fluidsynth soundfont path settings

* remove redudant printf

* fix missing #endif
2021-12-17 15:46:35 +01:00
Roman Fomin
bf31a22f5f
fix -longtics parameter, remove unnecessary variables (#378)
* fix -longtics parameter, remove unnecessary variables

* remove complevel variable, MBF21VERSION macro
* -longtics command line parameter is for the complevel vanilla only

* fix -complevel parameter
2021-12-15 09:49:31 +01:00
Fabian Greffrath
8138f378df
implement custom atexit() sequence (#377)
* implement custom atexit() sequence

* use stdlib malloc() in I_AtExit()

* get rid of has_exited, we already handle recursive I_SafeExit() calls
2021-12-14 07:17:06 +01:00
Roman Fomin
7f9a7239e8 win midi: remove volume correction 2021-12-12 15:32:09 +07:00
Roman Fomin
b63042cf6a automap: fix drawing marks > 9 2021-12-12 14:05:57 +07:00
Fabian Greffrath
bd071429d9 initialize TXT_SDLWindow 2021-12-10 10:43:55 +01:00
Fabian Greffrath
8cc369dadf cosmetics 2021-12-10 10:38:23 +01:00
Fabian Greffrath
54a46a5a25
free video resources on shut down (#376)
Consider that the window and renderer get reused by I_EndDoom() and thus
#delay their destruction. Fixes #353, fixes #355.
2021-12-10 09:56:04 +01:00
Fabian Greffrath
393a45492f
reuse existing renderer in TXT_Init() (#375)
instead of destroying it and creating a new one.

Fixes a crash on exit when ENDOOM is enabled.

Fixes #372, thanks @hackneyed-one.
2021-12-10 09:55:51 +01:00
Roman Fomin
2d0e18f829
use basetic for realtics calculation to compensate pause (#374)
* use basetic for realtics calculation to compensate pause

* fix ticdup
2021-12-09 21:03:10 +01:00
Roman Fomin
581d645558
netgame: enable -loadgame (#371)
* netgame: enable -loadgame

* fix -record -loadgame
2021-12-09 21:02:55 +01:00
Roman Fomin
1dc57a508a netgame: fix compatibility for Woof complevel vanilla server 2021-12-09 01:23:37 +07:00
Roman Fomin
6a93b4fc35 netgame: set compatibility (used in G_ReadOptions) 2021-12-08 19:11:01 +07:00
Roman Fomin
3490c1ba0a netgame: simplify compatibility options sync 2021-12-08 15:00:47 +07:00
Roman Fomin
dc65592dff
fix interpolation in new_sync mode (#370) 2021-12-08 08:35:28 +01:00
Roman Fomin
eebaa2dcc3
implement low-res turning (and -shorttics) (#369) 2021-12-08 08:33:56 +01:00
Roman Fomin
069a4e5c10 explicitly call memory management functions in net_ * files 2021-12-08 13:13:37 +07:00
Roman Fomin
d4610e111c netgame: fix free() call 2021-12-08 01:59:04 +07:00
Roman Fomin
2217e75e1c
integrate net_gui module from Chocolate Doom (#365)
* integrate net_gui

* fix SDL_INIT_VIDEO

* remove CheckSHA1Sums()

* fix format warning

* remove unused code

* fix net_gui exit
2021-12-07 14:49:07 +01:00
Roman Fomin
fffc6238b0
fix missing gamepad graphics in the menu (#368) 2021-12-07 07:19:50 +01:00
Roman Fomin
9468d7614a fix memory leak 2021-12-06 19:17:38 +07:00
Roman Fomin
97779b39fb
speed up midifile.c (#367)
* don't realloc for one event at time

* use memio

* fix gcc warning
2021-12-06 08:19:29 +01:00
Roman Fomin
d5bb524f77
win midi: fix pitch bend range when stopping song (#366) 2021-12-06 08:18:48 +01:00
Fabian Greffrath
e21655fe9d now fix building with non-MinGW GCC 2021-12-03 12:10:57 +01:00
Fabian Greffrath
9ec3ee6f2d Merge branch 'master' of https://github.com/fabiangreffrath/woof 2021-12-03 11:11:56 +01:00
Fabian Greffrath
f3f0a28817 fix building with MinGW 2021-12-03 11:11:36 +01:00
Roman Fomin
6d211635e6 netgame: fix connection to Chocolate Doom server 2021-12-03 16:29:39 +07:00
Roman Fomin
fbeac8bf21
allow the DEH parser to skip blank lines (#364)
* allows the DEH parser to skip blank lines

* fix dehfseek call

* remove redundant checks, fix multiple DEH processing
2021-12-03 09:58:13 +01:00
Fabian Greffrath
36972fde3c Merge branch 'master' of https://github.com/fabiangreffrath/woof 2021-12-01 09:37:30 +01:00
Fabian Greffrath
6a061fb0ee update to SDL 2.0.18 2021-12-01 09:37:21 +01:00
Roman Fomin
385dfc44f7
fix scaled time interpolation (#363)
* fix scaled time interpolation

* remove float
2021-11-30 08:52:46 +01:00
Roman Fomin
03b0409584
bring implementation of -timedemo in line with Chocolate Doom (#362) 2021-11-28 20:24:01 +01:00
Roman Fomin
1f2c476af1
fix -timedemo (#361) 2021-11-28 16:05:36 +01:00
Roman Fomin
9d2a8aff4a
fix -fastdemo (#360)
* fix -fastdemo

* fix -speed parameter

* don't use config variable

* fix demowarp and demoskip

* fix formatting

* remove check, alter GetAdjustedTime istead

* remove redundant changes

* offsetms can be negative
2021-11-28 10:43:41 +01:00
Roman Fomin
a85d97cdb6 win midi: fix gcc warning 2021-11-28 11:38:26 +07:00
Roman Fomin
e707e7dc45
win midi: non-linear volume control (#359)
* win midi: non-linear volume control

* add const
2021-11-26 21:06:38 +01:00
Roman Fomin
9babb1647f win midi: fix memory leak 2021-11-27 02:09:34 +07:00
Roman Fomin
2c2eff19d2
integration of Chocolate Doom network code (#280)
* initial import

* code integration

* fix consistancy type

* comment out unused code

* fix out of bounds index

* remove redundant declaration

* fix NET_Log declaration

* fix format errors

* sync Boom/MBF options

* remove game.h include from net_defs.h

* actually write/read Boom/MBF options

* wait for 2 players by default

* TryRunTics is never called in sigletics mode

* fix freeing client name

* remove check for -timer and -avg from P_SpawnSpecials

* remove sha1

* remove sha1.c sha1.h from CMakeLists.txt

* change pet names

* fix gcc warning

* return string duplicate

* add const
2021-11-26 17:50:40 +01:00
Fabian Greffrath
c439e0698a Merge branch 'master' of https://github.com/fabiangreffrath/woof woof_8.1.0 2021-11-26 08:22:24 +01:00
Fabian Greffrath
9b1bb6ab29 release Woof! 8.1.0 2021-11-26 08:18:06 +01:00
Roman Fomin
c06a477a8b fix comp_soul option for boom/mbf complevel 2021-11-23 14:43:17 +07:00
Roman Fomin
87e9b8d2e4
bring implementation of soul bounce fix inline with PrBoom+ (#358)
* add new line

* bring implementation of soul bounce fix inline with PrBoom+

* use P_SetTarget

* add comments
2021-11-22 13:06:11 +01:00
Fabian Greffrath
7dc92387dd header addendum 2021-11-22 11:59:45 +01:00
Fabian Greffrath
a36744b516 let max screenwidth correspond to 21:9 width in hires mode
Also, account for the fact that I_GetScreenDimensions() works
entirely in the lores regime and adapt SCREENWIDTH calculation
accordingly.
2021-11-22 11:58:54 +01:00