Ralph Sennhauser
cfb8ee9225
Fix ModeTToPerms
...
Needs bitwise AND instead of OR, else irrespective of filemode requested
all permissions are given in CreateDirectories.
Fixes: 43e7dbc6da
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-09-30 17:03:11 +02:00
Ralph Sennhauser
dfa16d185f
Use absolute path in CreateDirectories
...
This allows to create nonextising relative paths, this is useful for
example for `HOME=tmp ./binaries/system/pyrogenesis` running pyrogenesis
with a default config.
Fixes: 43e7dbc6da
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-09-29 13:41:53 +02:00
Vladislav Belov
b75edb9b3f
Replaces HostHasSSE by SDL_HasSSE
...
SDL also includes fixes for E2K:
https://github.com/libsdl-org/SDL/commit/67f0b9b86dd16c38b8d4c6e16cceaa166d31a83e
2026-09-22 21:57:57 +02:00
phosit
7b188fb71c
Remove lib/types.h
...
This file is now almost empty.
It was included in some files which didn't required it.
2026-09-21 18:12:08 +02:00
phosit
281e8cd862
Remove uint
...
It's better to use the native types.
2026-09-21 18:11:47 +02:00
phosit
ae7801c9c7
Remove u64
...
It's better to use types from the standard library.
2026-09-21 18:11:38 +02:00
phosit
6a0c8c1a5a
Remove u32
...
It's better to use types from the standard library.
2026-09-21 18:11:31 +02:00
phosit
500606e587
Remove u16
...
It's better to use types from the standard library.
2026-09-21 18:11:22 +02:00
phosit
00ee825374
Remove u8
...
It's better to use types from the standard library.
2026-09-21 18:11:14 +02:00
phosit
a4f5cbc23e
Remove i64
...
It's better to use types from the standard library.
2026-09-21 18:10:59 +02:00
phosit
3e7263f0db
Remove i32
...
It's better to use types from the standard library.
2026-09-21 18:10:39 +02:00
phosit
b7c310535d
Remove i16
...
It's better to use types from the standard library.
2026-09-21 18:10:26 +02:00
phosit
6ccc54ad6c
Remove i8
...
It's better to use types from the standard library.
2026-09-21 18:10:08 +02:00
Vladislav Belov
9dec9c1d53
Removes SMBIOS
...
It was implemented on Windows only. It doesn't really contain a useful
for us information which can not be obtained by diagnostic tools like
dxdiag when needed.
2026-09-21 01:10:35 +02:00
Vladislav Belov
63016196ce
Removes unused code from lib/bits.h
2026-09-21 00:47:17 +02:00
Vladislav Belov
2c68f7e426
Replaces ceil_log2 by std::bit_width
...
Also removes unused floor_log2.
2026-09-21 00:47:15 +02:00
Vladislav Belov
0650721b19
Replaces round to closest power of two by std ones
2026-09-21 00:47:13 +02:00
Vladislav Belov
0b90eea56b
Replaces is_pow2 by std::has_single_bit
2026-09-21 00:47:11 +02:00
Vladislav Belov
93eb35a618
Replaces PopulationCount by std::popcount
2026-09-21 00:47:09 +02:00
phosit
a56456495c
Remove debug_printf filtering
...
The filter was rarely used. The implementation was overly complex and
might have filtered out strings that should have been printed.
Tags like "FILES|" have been removed.
For the loader a macro `LOADER_LOG` has been introduced.
2026-09-19 08:52:27 +02:00
Vladislav Belov
58e2c59466
Adds Load with unique_ptr to VFS
...
Also replaces some usages of Load with shared_ptr by unique_ptr.
2026-09-10 16:39:29 +02:00
Vladislav Belov
aecd2b4245
Uses span for vfs instead of passing shared_ptr
2026-09-10 16:39:24 +02:00
Vladislav Belov
1b4397d2ae
Adds final to VFS
2026-09-10 16:39:18 +02:00
Vladislav Belov
571047a64a
Adds explicit check for VFS create alignment
2026-09-10 16:39:14 +02:00
phosit
89ea0ee4af
Remove COMPILER_FENCE
...
Replace it by `std::atomic_signal_fence(std::memory_order::seq_cst)`.
2026-09-08 17:12:28 +02:00
Vladislav Belov
551071c5a4
Replaces shared_ptr by span for LoadFile and Store
2026-09-05 12:33:46 +02:00
Vladislav Belov
2a6f17fbae
Uses std::string_view for UTF-8 conversions
2026-07-14 00:14:27 +02:00
Vladislav Belov
92ee2dba9e
Removes unused OGL legacy
2026-07-09 22:53:30 +02:00
Vladislav Belov
63b4b35bd3
Removes unused code about GL version from OGL
2026-07-08 20:54:11 +02:00
Vladislav Belov
cd872e38d7
Removes functions about extension from OGL
...
We use GLAD directly now.
2026-07-08 20:06:36 +02:00
Vladislav Belov
2bc674cbaa
Removes extensions prior 2.1
...
Since we generate GL headers using GLAD with 2.1 version we don't need
to check extensions prior that.
2026-07-08 09:28:52 +02:00
Vladislav Belov
eb3f55ae27
Removes unused ogl_SquelchError
2026-07-08 08:13:48 +02:00
Vladislav Belov
7790c0972b
Removes legacy timers
...
Modern profiling tools provide more details and more precise
measurements for more platforms. For simpler cases we have our in-game
profiler.
2026-06-28 13:34:01 +02:00
Ralph Sennhauser
4967922447
Don't load WGL
...
Depend on SDL and wxWidgets doing the necessary work.
Also remove WGL from glad.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-28 09:49:26 +02:00
Ralph Sennhauser
c5a9d18cfa
Drop use of GLX and EGL
...
Only used for hw-report and only when using GLX which is for X11 only.
The usefulness of those reported properties is questionable and X11 is
becoming rarer.
This allows us to drop a direct dependency on X11 delegating the
handling to SDL and wxWidgets respectively GTK.
Further SDL3 wont expose supported video driver at compile time making
this step more meaningful.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-28 09:49:26 +02:00
Ralph Sennhauser
08cd7e9096
Drop vsync workaround for wxWidgets
...
wxWidgets already sets it's prefered mode.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-28 09:49:25 +02:00
vyordan
ec8b420abc
Move Script* classes to Script namespace
...
- Rename ScriptEngine, ScriptContext, ScriptInterface, ScriptRequest to
Script::Engine, Script::Context, Script::Interface, Script::Request
- Remove 'Script' prefix from filenames:
ScriptContext.* → Context.*
ScriptInterface.* → Interface.*
ScriptRequest.* → Request.*
ScriptEngine.* → Engine.*
ScriptConversions.* → Conversions.*
ScriptExceptions.* → Exceptions.*
ScriptForward.* → ForwardDeclarations.*
ScriptStats.* → Stats.*
- Update all includes, forward declarations, and friend classes
- Use namespace Script { ... } in .cpp definitions to avoid repetitive
Script:: prefix (keeping global callbacks outside)
- Rename internal implementation structs:
ScriptInterface_impl → Interface_impl
ScriptFunction → Function
- Update copyright year to 2026 in all touched files
- Suppress pre-existing cppcheck warnings (uninitvar, nullPointer, unknown
macro) by adding them to suppressions-list.txt (these are not caused
by this refactor)
Fixes #7516
2026-06-20 17:43:00 +02:00
Ralph Sennhauser
181a29597d
Remove helper function FileExists
...
Use std::filesystem at caller site instead.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-20 12:01:38 +02:00
Ralph Sennhauser
355c068068
Remove helper function FileSize
...
Use std::filesystem at caller site instead.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-20 09:00:57 +02:00
phosit
3af4287f6d
Change the return type of event-handler
...
The return value is more strongly typed.
2026-06-19 20:53:52 +02:00
phosit
47e8a17a41
New input handling system
...
The new system allows to register all function objects as Input::Handler
not only function pointers.
To not get dangling references a handler is unsubscribed on it's
destruction.
The order in with the handlers are executed has to be specified by the
slot-argument, instead of the reverse order of registration.
2026-06-19 20:53:51 +02:00
Ralph Sennhauser
52dee75c47
Remove unused helpers from wfilesystem
...
Were used for mtime conversion. Cpp-20 has std::chrono::file_clock.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-18 20:47:34 +02:00
Ralph Sennhauser
3c0274c7cc
Remove unused android filesystem helpers
...
We don't use neither opendir nor readdir nor closedir. Further there are
no callers for init_libc().
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-18 19:48:05 +02:00
Ralph Sennhauser
62e116340e
Remove POSIX rename wrapper
...
Unused by now, use `<filesystem>` instead.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-18 17:46:00 +02:00
Ralph Sennhauser
792949e812
Remove POSIX mkdir wrapper
...
Unused by now, use `<filesystem>` instead.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-18 10:53:30 +02:00
Ralph Sennhauser
e3c65841de
Replace all uses of POSIX stat
...
Use `<filesystem>` instead of `stat` and remove wrapper.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-17 13:14:28 +02:00
Ralph Sennhauser
8336e679af
Replace all uses of POSIX realpath
...
Use `<filesystem>` instead of `realpath` and remove wrapper.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-16 14:08:02 +02:00
Ralph Sennhauser
149baf116b
Replace all use of POSIX truncate
...
Use `<filesystem>` instead of `truncate` and remove `truncate`
portability wrapper.
Add a helper function `StatusFromSystemError` to convert error_code to
`Status`.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-15 15:33:59 +02:00
Ralph Sennhauser
57f5b73458
Remove unused wrapper for POSIX rmdir
...
std::filesystem::remove can be used instead.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-15 15:33:59 +02:00
Ralph Sennhauser
518ed74496
Replace all use of POSIX unlink
...
Use `<filesystem>` instead of `unlink` and remove `unlink` portability
wrapper.
Signed-off-by: Ralph Sennhauser <ralph.sennhauser@gmail.com >
2026-06-15 15:33:59 +02:00