Commit Graph

445 Commits

Author SHA1 Message Date
Azamat H. Hackimov
096cd84991 Cleanup hogfile code
Remove unused code related to old HogUtils executable, now superseded by HogMaker.
Stricter checks for hog header and hog file entry (check fread() sizes).
2024-05-06 22:50:07 +03:00
Louis Gombert
0e69bf465f
Merge pull request #241 from icculus/ryan-sdl2-port
Initial SDL2 port
2024-05-06 08:57:20 +00:00
Ryan C. Gordon
6d837e2083
sdl2: default to fullscreen mode. 2024-05-06 01:43:06 -04:00
Ryan C. Gordon
80335136e3
sdl2: Add support for mousewheel and more mouse buttons. 2024-05-05 11:09:07 -04:00
Ryan C. Gordon
bd3a596975
sdl2: Updated README for SDL2 changes.
Update SDL 1.2 references, remove SDL_image references.
2024-05-05 10:27:48 -04:00
Ryan C. Gordon
6f07fd5a94
sdl2: Remove some dead 3DFx Voodoo Linux support code from the year 2000. 2024-05-05 10:25:05 -04:00
Ryan C. Gordon
b362bc9c54
sdl2: Remove a commented out line. 2024-05-05 10:22:16 -04:00
Ryan C. Gordon
851f47537b
sdl2: Ignore key-repeats events.
Fixes keyboard input during gameplay.
2024-05-05 10:14:53 -04:00
Ryan C. Gordon
65b1a7dc3b
sdl2: Fix broken audio in MVE playback.
This doesn't fix the audio gaps, just the static introduced in the SDL2 port.

SDL2 does not initialize the audio callback's buffer, unlike SDL 1.2, under
the assumption the callback is going to fully write it anyhow. But since
the movie player wants to mix against the current contents of the buffer,
we need to explicitly initialize it to silence first.
2024-05-05 10:14:50 -04:00
Jeod
22bc56aa5f
Merge pull request #287 from Jayman2000/include-gpl-in-artifacts
Add a copy of the GPL to CI artifacts
2024-05-04 19:20:11 -04:00
Jason Yundt
db742e6939 Add a copy of the GPL to CI artifacts
The GPL requires that you include a copy of the GPL with every copy of
programs that are released under the GPL [1]. Before this change, CI
artifacts didn’t include a copy of the GPL.

Fixes #276.

[1]: <https://www.gnu.org/licenses/gpl-faq.en.html#WhyMustIInclude>
2024-05-04 15:16:14 -04:00
Jeod
bea6bec96a
Merge pull request #144 from MaddTheSane/machBundle 2024-05-04 14:06:21 -04:00
C.W. Betts
c534c1be1d Also make net games and internet plug-ins also be MODULES. 2024-05-04 12:05:15 -06:00
C.W. Betts
3adf6906ab Build the plug-ins as CMake modules. 2024-05-04 12:05:11 -06:00
Jeod
84304cf164
Merge pull request #275 from winterheart/d3-osx-hog-generate 2024-05-04 12:03:27 -04:00
Jeod
8b453fd4f2
Merge pull request #277 from MaddTheSane/onlyOneHog 2024-05-04 12:03:03 -04:00
Jeod
52e66c3275
Merge pull request #233 from jcoby/64bit-fixes 2024-05-04 12:01:06 -04:00
Azamat H. Hackimov
ef886a2cf2 Generate d3-osx.hog for macOS
Reorganizing hog generation for Linux and macOS.
2024-05-04 16:34:36 +03:00
Jeod
e2b6653bbd
Merge pull request #285 from Talon1024/patch-1
Add links to Steam and GOG store pages
2024-05-04 07:48:04 -04:00
Kevin Caccamo
f289fce0e8
Add links to Steam and GOG store pages 2024-05-04 03:00:08 -04:00
Louis Gombert
d36af47214 Remove unused header dyna_svga.h 2024-05-03 19:43:41 -04:00
Louis Gombert
321145c28f Remove usage of DECLARE_POINTERS in dyna_curses.h 2024-05-03 19:43:41 -04:00
Louis Gombert
053aef798e Remove unused header dyna_pthread.h
This header is a duplicate of dyna_pthread.h in lnxmvelib/, and is never included anywhere
2024-05-03 19:43:41 -04:00
Jacob Coby
efb6139110 Merge branch 'jcoby-64bit-fixes' into 64bit-fixes 2024-05-03 16:48:54 -04:00
Jacob Coby
b64f17fb17 Merge branch '64bit-fixes' of github.com:jcoby/Descent3 into jcoby-64bit-fixes 2024-05-03 16:46:11 -04:00
Azamat H. Hackimov
940f4ff0c8 Exclude ps_srand() call from InitMathTables()
Seems this is totally unrelated to fix library API. Moved ps_srand() to appropriate places right after InitMathTables();
2024-05-03 16:22:35 -04:00
Azamat H. Hackimov
7352761bad Unbundle fix API from osiris_vector.h
Seem this was done to ease linking mission dlls. Now these missions are reusing fix as static library.
2024-05-03 16:22:35 -04:00
Azamat H. Hackimov
48a97dec38 Fix warnings in fix library
Fix most of "narrowing conversion" warnings.
2024-05-03 16:22:35 -04:00
Azamat H. Hackimov
536b83d10f Remove unused fix asm implementations 2024-05-03 16:22:35 -04:00
Azamat H. Hackimov
5aca8b7e5a Reorganizing fix library 2024-05-03 16:22:35 -04:00
C.W. Betts
f066060ee6 Only load one OS hog file.
This prevents a dangling file pointer on macOS if a user has both d3-linux.hog and d3-osx.hog.
2024-05-03 14:15:08 -06:00
JeodC
f7b19d0bf4 Fix mercenary features 2024-05-03 16:04:16 -04:00
Louis Gombert
ad78f4d756 Enable logger on all CI builds 2024-05-03 16:01:30 -04:00
Ryan C. Gordon
0e55dee0de x86-64 supports the int $3 opcode to trigger a breakpoint.
This architecture obviously didn't exist in 1999.  :)
2024-05-02 14:56:11 -04:00
Louis Gombert
2d853040fa
Merge pull request #263 from MaddTheSane/oobArray
Fix a couple of out-of-bounds warnings found by Clang.
2024-05-02 17:49:33 +00:00
Jeod
b90566ab03 Rewrite Windows usage instructions 2024-05-02 10:04:48 -04:00
Ryan C. Gordon
ff571ed7dd
Make sure Mac and Linux builds have SDL2 available.
Currently Windows gets this from vcpkg. Mac will get it from Homebrew,
and the GitHub linux builders will just install it with apt-get.

This might not be the perfect solution (having to install Homebrew is a pain,
GitHub Actions has an ancient SDL2), but it gets all the common platforms
running for now without much fuss.
2024-05-02 08:30:46 -04:00
Ryan C. Gordon
b5d68319d5
Use SDL_assert on Linux/Mac. 2024-05-02 08:29:23 -04:00
Ryan C. Gordon
20601d15e6
Quit immediately if we get an SDL_QUIT event. 2024-05-02 08:29:23 -04:00
Ryan C. Gordon
f739edff3d
Some more SDL1.2 -> SDL2 work. Mouse input doesn't suck now! 2024-05-02 08:29:23 -04:00
Ryan C. Gordon
001a533399
Initial migration from SDL 1.2 to SDL2. 2024-05-02 08:29:21 -04:00
Jason Yundt
67ecea0577 Fix variable name in Linux build instructions
0b41a1b (CMake: expose BUILD_TESTNG option, rename LOGGER to
ENABLE_LOGGER, 2024-04-29) had originally introduced this change. It
looks like d132a1c (Merge pull request #251 from
winterheart/pstring-unittests, 2024-05-01) unintentionally removed this
change.
2024-05-02 07:56:21 -04:00
Louis Gombert
3990cef08e
Merge pull request #266 from MaddTheSane/snprintf
Replace sprintf with snprintf in the merc missions.
2024-05-02 11:42:32 +00:00
Jason Yundt
1ce01c95f8 Remove unused 32-bit libXext dependency
When the compilation instructions were first written [1], it made sense
to tell users to install the 32-bit version of libXext. At the time,
compiling Descent 3 on Linux required running a pre-compiled
hogUtils-i686 binary, and that binary depended on libXext.

As of 1765d07 (Remove now unused hogUtils-i686, 2024-04-21), the
hogUtils binary no longer exists, so there’s no need to install a 32-bit
version of libXext.

[1]: f929310 (Update README.md, 2024-04-20)
2024-05-02 06:42:41 -04:00
Jason Yundt
a3229d4964 Fix package name
Fixes #267.
2024-05-02 06:42:41 -04:00
C.W. Betts
e1424840e1 Replace sprintf with snprintf in the merc missions. 2024-05-01 17:26:57 -06:00
C.W. Betts
1a759638ed Fix a couple of out-of-bounds warnings found by Clang. 2024-05-01 16:40:30 -06:00
Louis Gombert
0254bec636
Merge pull request #256 from pzychotic/fix-win-debug-build
Fixed Windows debug build when ENABLE_LOGGER is active.
2024-05-01 12:47:31 +00:00
Thomas Roß
b59115460e [Build] Fixed Windows debug build when ENABLE_LOGGER is active. 2024-05-01 14:26:33 +02:00
Louis Gombert
d132a1c737
Merge pull request #251 from winterheart/pstring-unittests
Unittests for misc
2024-05-01 12:13:11 +00:00