Commit graph

2203 commits

Author SHA1 Message Date
rr-
1fa5bd3ed5 port HWR_FMVInit 2021-10-24 19:12:15 +02:00
rr-
5b9b063758 port HWR_FMVDone 2021-10-24 19:12:15 +02:00
rr-
1198bbe41c port HWR_PrepareFMV 2021-10-24 19:12:15 +02:00
rr-
27b9ec466b port HWR_ShutdownHardware 2021-10-24 19:12:15 +02:00
rr-
e40849766e port HWR_InitialiseHardware 2021-10-24 19:12:15 +02:00
rr-
f79459b48f port HWR_ReleaseSurfaces 2021-10-24 19:12:15 +02:00
rr-
1f8567dd35 port HWR_GetSurfaceAndPitch 2021-10-24 19:12:15 +02:00
rr-
d4a963dcdc port HWR_PrintShadow 2021-10-24 19:12:15 +02:00
oziphantom
36288025a1
camera: add manual camera control 2021-10-22 16:41:41 +02:00
rr-
44362e70d5
scripts: extend IDA importer 2021-10-19 23:46:12 +02:00
rr-
74edcabd1b
file: use sizeof() 2021-10-19 19:53:14 +02:00
rr-
6f9e1b1bc3
misc: use WALL_L constants 2021-10-19 19:50:47 +02:00
rr-
78377ba600
style: remove garbage comments 2021-10-19 18:04:04 +02:00
rr-
77e904e56d
build: simplify build pipeline a bit 2021-10-19 17:24:18 +02:00
rr-
f871f298a7
build: add pre-commit hooks 2021-10-19 16:54:06 +02:00
rr-
1e913b4a2d
objects: always initialise doors
This is a regression from cb928f93. It broke the demo playback after we
had started the game once – the door would remain not closed and it
would destroy wolves' pathfinding . At the same time it only makes sense
to do the anti-void check when closing the door during the game, not
immediately after loading a level or a save.

Closes #124
2021-10-19 16:10:57 +02:00
rr-
4aec137a6a
misc: bypass clang warning
Clang emits pointless warnings:

src/specific/ati.h:460:18: warning: function with no prototype cannot use the stdcall calling convention [-Wmissing-prototype-for-cc]

Turns out it's a bug in clang:

https://lists.llvm.org/pipermail/llvm-bugs/2016-May/047139.html

It can be worked around by adding dummy void parameter to the arglist.
2021-10-19 13:32:55 +02:00
rr-
b96daac6de
misc: fix OG buffer overflow
Closes #134
2021-10-19 13:20:37 +02:00
oziphantom
fdf5f155fe
misc: MSVC build fixes
* Warning fix

taking the negative of a unsigned value is still positive on MSVC it seems. So I cast it to a signed value first.

* MSVC weirdness

for some reason maths.h doesn't define M_PI and you have to set this define to make it
Also in the ongoing war with "things other than MS" it will complain that strdup is not a true C standard name and you have to use _strdup, which gcc won't accept, so I just typedef.

* cannot perform maths on type void

gcc defaults void to a 1 byte pointer, so I cast to a char* here to perform the same result on other compilers.

* remove the mess VS makes

This removed all of the VS build folders and debug output. I've also included the sln, at the moment I don't think it is ready for everybody to use.
Fixed paths in the sln ( not sure if I can solve it, but there might be a better way to solve it )
Doesn't run the python build step, not a deal breaker for the most part but somebody doing a fresh grab would end up running into the issue and this will cause  problems for them.
But this will allow me to move between branches and cherry pick check-ins again.

* change GameAllocMemPointer to char*

This allows the + and -  maths done on alloc and free to compile in all compilers.
2021-10-19 01:13:03 +02:00
oziphantom
714586de70
misc: various fixes
- fixed T1M_INJECT define name
- fixed potential use of uninitialized variable error
- fixed a crash on demo where it tries to play non-existing demo data
2021-10-18 16:47:00 +02:00
rr-
a9090a9bec
music: add ability to mute music in main menu
Closes #119
2021-10-17 23:23:50 +02:00
rr-
b075f4e0ad
demo: fix wolves behavior with enhanced look
Closes #124
2021-10-17 23:03:22 +02:00
rr-
bbaafe3db3
specific: fix shadows 2021-10-17 18:57:17 +02:00
rr-
65e336cdcf
specific: fix WndProc definition 2021-10-17 18:47:56 +02:00
rr-
981b91e81d
args: fix buffer overflow 2021-10-17 18:47:36 +02:00
rr-
f5b1e8a4ca
sndpc: pause the music while in pause (fixes #128) 2021-10-17 16:46:13 +02:00
rr-
baeed5dd01
specific: reduce bar padding on low resolutions
Fixes #113
2021-10-17 16:37:00 +02:00
rr-
a91e77c782
hwr: fix applying bilinear filter 2021-10-17 16:32:16 +02:00
rr-
b049fc839b
config: add more resolutions 2021-10-17 16:23:41 +02:00
rr-
cd88391f3a
config: fix ignored resolution width/height 2021-10-17 16:17:21 +02:00
rr-
f29c6ee8f7
port HWR_SetHardwareVideoMode + fix #130 2021-10-17 00:17:19 +02:00
rr-
87fcb9aad3
port HWR_SetupRenderContextAndRender 2021-10-17 00:10:15 +02:00
rr-
f8e048d20c
misc: fix T1M config sometimes ignored
If for whatever reason the file with the original TombATI settings
cannot be deleted, the game would read that file and save T1M settings
over and over again, essentially making it impossible to change the
configuration across launches.

This is now fixed by only saving T1M settings if we managed to remove
the legacy file.
2021-10-16 15:55:02 +02:00
rr-
b84359d9bc
port HWR_DownloadPicture 2021-10-15 22:25:50 +02:00
rr-
e17f183d31
port HWR_CopyPicture 2021-10-15 22:07:39 +02:00
rr-
22ca99efc8
port HWR_FadeWait 2021-10-15 21:51:47 +02:00
rr-
84294b867d
port S_CopyBufferToScreen 2021-10-15 21:37:27 +02:00
rr-
16694491ac
port S_DrawRoomSprites 2021-10-15 21:29:50 +02:00
rr-
398442f46d
post S_GetObjectBounds 2021-10-15 21:17:33 +02:00
rr-
4dc512b833
port phd_InitPolyList 2021-10-15 20:24:40 +02:00
rr-
8295c7152f
port S_PrintShadow 2021-10-15 20:16:12 +02:00
rr-
b813c8056a
port S_InsertRoom 2021-10-15 20:07:20 +02:00
rr-
02f34ab3c7
port phd_PutPolygons 2021-10-15 20:07:19 +02:00
rr-
5e3c747da9
specific: add __stdcall modifier to ati pointers 2021-10-15 12:19:32 +02:00
rr-
09c10f7271
specific: add a call to va_end 2021-10-15 10:56:04 +02:00
rr-
d24802476d
port calc_roomvert 2021-10-15 00:48:13 +02:00
rr-
4248c60ffa
port calc_vertice_light 2021-10-14 23:31:42 +02:00
rr-
801214ea9c
specific: port glrage resolution patch 2021-10-14 22:01:29 +02:00
rr-
087e4896b8
port HWR_SwitchResolution 2021-10-14 21:56:00 +02:00
rr-
0c690e2955
port calc_object_vertices 2021-10-14 21:55:50 +02:00