Commit Graph

442 Commits

Author SHA1 Message Date
gibbed
f2a68e4b85 [Base] ByteStream assert cleanup. 2021-06-28 20:32:52 -05:00
gibbed
a12f775c23 [Base] LaunchWebBrowser now takes a string view. 2021-06-28 20:32:52 -05:00
gibbed
f4cfa65c7a [Base] Fix natvis for new endian_store. 2021-06-28 20:32:52 -05:00
gibbed
92242f3f7d [Base] Attach console on cvar help/failure.
[Base] Attempt attaching to console on cvar help/failure.
2021-06-28 11:57:06 -05:00
gibbed
80cafd9358 [Base] Clean up simple message box utility. 2021-06-28 11:57:06 -05:00
ztjohnst
bf5f700f9e [Base] Fix invalid cvar args causing silent exit.
[Base] Fix invalid cvar arguments causing Xenia to silently exit.
2021-06-28 10:31:18 -05:00
ztjohnst
a77ed6f4a7 [Base] Add ShowInfoMB / ShowErrorMB functions.
[Base] Add ShowInfoMessageBox / ShowErrorMessageBox functions.
2021-06-28 10:31:18 -05:00
ztjohnst
be1a666066 [Base] Change behavior of has_console_attached().
[Base] Change has_console_attached() so that it no longer proves true
if Xenia is launched from a Windows Terminal.
2021-06-28 10:31:18 -05:00
gibbed
5c516cc341 Add missing break in logging. 2021-06-26 12:44:21 -05:00
gibbed
6bd96a5091 Remove unconditional block in logging.
Remove unconditional block in logging. This was done so the previous
commit shows an actual useful diff.
2021-06-26 12:26:10 -05:00
gibbed
458dbba4ae Ensure that logging waits before shutting down.
- Ensure that logging waits until everything is written before shutting
  down.
- Fix a bug where a new log line would not be written until the next
  log line had been appended.
2021-06-26 12:26:10 -05:00
Gliniak
1cc0c1c985 Added more UTF-8 path tests (fnfp & fbnfp).
Added more UTF-8 path tests (find_name_from_path &
find_base_name_from_path).
2021-06-25 23:35:56 -05:00
Rick Gibbed
0d3ef65dcd Add more UTF-8 path tests.
Add more UTF-8 path tests to catch newly discovered issues.
2021-06-25 23:07:57 -05:00
Gliniak
dcffc1a4d5 [Base] Remove multiple trailing separators in path 2021-06-25 23:07:57 -05:00
Joel Linn
f6e48d5386 [Base] Fix Clock platform functions on POSIX. 2021-06-18 16:10:19 +03:00
Triang3l
866a29e153 [Base] saturate_signed NaN comment 2021-06-05 15:04:06 +03:00
Triang3l
3c20a83972 [Base] Float clamping cleanup 2021-06-05 14:55:55 +03:00
Joel Linn
10ff77a24f [Base] Add workaround for GCC bug
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100801
2021-06-02 22:28:43 -05:00
Joel Linn
ceb382f8ec Update Catch2 test framework
- Use their main() method to fix command line options. Fix CLion testing
- Change to correct tag syntax.
2021-06-02 22:28:43 -05:00
Joel Linn
0e019f96b4 [Base, Linux] Make thread exit non returning
- Use pthread_exit() instead of pthread_cancel() if current thread
- Modify tests to ensure Exit does not return
2021-06-02 22:28:43 -05:00
Joel Linn
d40dfa11c5 [Base] Use pragma pack for non msvc as well.
- Pack attributes may be ignored by GCC
2021-06-02 22:28:43 -05:00
Joel Linn
d55192ea30 [Base] Refactor byte_swap
- Use builtins on non MSVC compilers
- Use `if constexpr` to reduce explicit overloads and SFINAE overhead
2021-06-02 22:28:43 -05:00
Joel Linn
4800194f0d [Base] Add faster bit_count variants
- Use C++20 `popcount()` when available
- Else use compiler specific built-ins
2021-06-02 22:28:43 -05:00
Joel Linn
e58686c9df [Base] Add le<> type
- Addition to `be<>` type
2021-06-02 22:28:43 -05:00
Joel Linn
28ca58c0e9 [Base] Fix HighResolutionTimer
- Test was failing on Linux 5.11 and GLIBC 2.33
- `timer_t(0)` is a valid handle, so a `valid_` flag was added to guard
  destruction
- Similar behaviour on Windows was fixed as well. The invalid values for
  `HANDLE` are API dependent.
2021-06-02 22:28:43 -05:00
Joel Linn
86722be9ca [Base] Make Arena alignment aware
- Add align parameter
- Templated Alloc() implicitly aligns type correctly
- Rewind may leak padding that was added due to alignment
2021-06-02 22:28:43 -05:00
Joel Linn
d8cfeac79f [Base] Remove redundant copy and move operators
- Compiler is smart enough to use 128bit vector regs by itself
2021-06-02 22:28:43 -05:00
Joel Linn
4d0d3f3ad4 [Base] Fix semaphore test
- Was using `Sleep()`
- Replaced with atomic value and bool flag
2021-06-02 22:28:43 -05:00
Joel Linn
2d9462f02b [Base] Fix unitialized variable in threading test 2021-06-02 22:28:43 -05:00
Joel Linn
4fb5244176 [Base] Fix namespacing 2021-06-02 22:28:43 -05:00
Joel Linn
4daa3f5a52 [Base] Add FourCC tests 2021-06-02 22:28:43 -05:00
Joel Linn
9bb920b104 [Base] Add FourCC type
- using fourcc_t = uint32_t
- make_fourcc() overloads
2021-06-02 22:28:43 -05:00
Triang3l
2d50fc07b4 [Linux] __builtin_ffsll instead of GNU/BSD-specific ffsll 2021-05-17 02:38:51 +03:00
Triang3l
8f1f849a06 [D3D12] unordered_map instead of multimap in TextureCache 2021-05-05 21:40:00 +03:00
Triang3l
b099d74f78 [Memory] List all partitions supporting non-FromApp memory mapping functions 2021-05-04 23:27:57 +03:00
gibbed
a18f9c9dc1 Add UTF-8 path tests for trailing separator. 2021-05-02 09:36:32 -05:00
gibbed
2d2721ee7a [Base] Fix UTF-8 fnfp with trailing separator.
[Base] Fix off-by-one in UTF-8 find_name_from_path with trailing
separator.
2021-05-02 09:36:32 -05:00
gibbed
9185c36b41 Add more UTF-8 path edge cases.
- Add macro for automatically testing both / and \ of all path
  input/outputs.
- Add more UTF-8 path edge cases.
2021-05-02 08:18:22 -05:00
gibbed
b7674f0bd8 [Base] Plain string variant of UTF-8 join_paths. 2021-05-02 08:18:22 -05:00
gibbed
46dfb3449c [Base] Dedupe new/old separators in UTF-8 fps.
[Base] Dedupe new/old separators in UTF-8 fix_path_separators.
2021-05-02 08:18:22 -05:00
gibbed
de3825274e [Base] Fix edge case in UTF-8 fnfp/fbp.
[Base] Fix edge case in UTF-8 find_name_from_path/find_base_path with
strings that consist of only a separator.
2021-05-02 08:18:22 -05:00
gibbed
653931ec8f Add and improve UTF8 tests. 2021-05-01 15:16:37 -05:00
gibbed
dbd980150b [Base] Don't use reverse iterator for UTF-8.
[Base] Don't use reverse iterator for UTF-8. Fixes #1760.
2021-05-01 15:16:37 -05:00
Joel Linn
7a0236dcc5 [Base] BitStream: Fix writing to non zeroed mem 2021-05-01 12:41:02 -05:00
sephiroth99
36f687e40e [Base] Add missing header for VS2017
When using VS2017, the compilation fails due to this missing header.

Signed-off-by: sephiroth99 <sephiroth99@gmail.com>
2021-01-31 23:22:59 -06:00
emoose
2d9326e02d [Kernel] Implement XeCryptBnQwNeRsaPubCrypt via BCrypt (win32 only) 2021-01-03 14:38:01 -06:00
Triang3l
86ba17847b [Base] Hopefully fix Clang template inheritance error 2020-12-31 16:46:25 +03:00
Triang3l
ea9ee0d4ba [Kernel] Make HDTV gamma the default 2020-12-31 16:14:26 +03:00
Triang3l
37013ee352 [Config] CVar defauls versioning 2020-12-31 16:04:50 +03:00
Triang3l
36a0bcec8b [GPU] XXH3 hash instead of XXH64 2020-12-08 22:31:09 +03:00