Shawn Hoffman
d71797154a
VolumeVerifier: enable fast hash functions by default
...
sets defaults based on cpu support.
2022-08-02 22:23:49 -07:00
Tilka
7d2d5d914b
Merge pull request #10903 from shuffle2/hash-reorg
...
Common/Hash: use zlib-ng for adler32. small cleanups.
2022-08-02 18:29:04 +01:00
Shawn Hoffman
17c554c165
Common/Hash: use zlib-ng for adler32. small cleanups.
2022-08-01 10:07:27 -07:00
Shawn Hoffman
46ad8b9d68
Implement hw accelerated AES
2022-08-01 10:00:42 -07:00
Tillmann Karras
d033d92b05
Move to C++20 for non-MSVC compilers
2022-07-30 23:35:53 +01:00
Shawn Hoffman
97ff757a74
SHA1/arm64: fix casting warning on certain gcc
2022-07-30 12:06:21 -07:00
Admiral H. Curtiss
a9d9f5c0da
Merge pull request #10899 from shuffle2/sha1
...
add hw-accelerated SHA1
2022-07-30 14:11:37 +02:00
Shawn Hoffman
25462f4a3c
SavePNG: make sure to finalize image file
2022-07-28 10:12:36 -07:00
Shawn Hoffman
8939210d8a
Common/Crypto/SHA1: implement accelerated versions
2022-07-27 01:07:48 -07:00
Shawn Hoffman
dd29a54cf6
introduce wrapper for SHA1 functionality
2022-07-26 22:16:37 -07:00
Josh
7e75bcd36f
Use Dynamic last Log Type
2022-07-27 00:07:53 +02:00
Admiral H. Curtiss
a9edf129e3
Merge pull request #10889 from shuffle2/spng
...
replace libpng with libspng
2022-07-26 12:53:04 +02:00
Admiral H. Curtiss
6b419c7ca3
Merge pull request #10876 from shuffle2/cpudetect
...
CPUDetect: improve win/arm64 support
2022-07-26 12:52:50 +02:00
Shawn Hoffman
76b4318b88
CPUDetect: improve win/arm64 support
...
read brand_string on macos/arm64
remove unused flags
report family/model info instead of vendor name
2022-07-25 21:21:11 -07:00
Shawn Hoffman
f92541fbd9
StripSpaces: only strip spaces
...
StripWhitespace maintains old behavior
2022-07-25 18:40:12 -07:00
Shawn Hoffman
acb10f0006
replace libpng with libspng
2022-07-25 18:32:16 -07:00
Shawn Hoffman
0a15d2fcec
cubeb: fix logged source file paths
2022-07-18 09:52:54 -07:00
Admiral H. Curtiss
2d8d3358c4
FatFsUtil: Skip past entries with invalid filenames.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
de9c9f2281
FatFsUtil: Improve error handling and error reporting.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
f40eeebcf0
FatFsUtil: Add some path traversal attack protection when unpacking.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
a621fdf857
Core: In deterministic mode, build SD cards with a consistent filename order and dummy timestamps.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
a5b1bfef68
Common: Change default path for Wii SD cards to not be inside the Wii NAND.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
77d4591fb4
Core: If configured, sync SD card image with SD card folder on emulation start and end.
...
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
b66cc1caf6
Config and UICommon: Add config option and user path for Wii SD card sync folder.
2022-07-11 23:11:40 +02:00
Admiral H. Curtiss
96751c4457
Treewide: Rename references to SD Card image path to clarify they mean the image file, not the folder.
2022-07-11 23:11:40 +02:00
Admiral H. Curtiss
fdc327c252
Externals/FatFs: Build as part of Dolphin.
...
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:37 +02:00
Admiral H. Curtiss
32523f155b
Merge pull request #10825 from Rudolchr/fix_build_with_libfmt-9
...
MsgHandler: Add a check for libfmt version to fix build with libfmt-9
2022-07-11 23:02:08 +02:00
Admiral H. Curtiss
20059776d9
Merge pull request #10831 from sepalani/BBA-cleanup
...
Common/Network+BBA/Builtin: Cleanup
2022-07-11 23:00:21 +02:00
TellowKrinkle
3d34a20105
Common: Fix CountTrailingZeros for weird compilers
2022-07-10 17:35:47 -05:00
JMC47
38cb76dea5
Merge pull request #10807 from merryhime/LogicalImm
...
Arm64Emitter: Simplify LogicalImm logic
2022-07-10 17:27:47 -04:00
Merry
0d947ed6fe
Arm64Emitter: Simplify LogicalImm further
...
h/t @dougallj
2022-07-10 22:17:09 +01:00
Merry
20ccc38f0f
BitUtils: Implement CountTrailingZeros
2022-07-10 22:17:09 +01:00
Sepalani
b950d038b9
Common/Network: Update IP checksum since total_len might have changed
2022-07-10 20:56:07 +04:00
Sepalani
5fdf255a2d
Common/Network: Make Build() methods const
2022-07-10 20:12:07 +04:00
Sepalani
d902b04ae0
Common/Network: Remove unused offset variables
2022-07-10 14:11:50 +04:00
Sepalani
b206f98261
Common/Network: Remove unnecessary size checks
2022-07-10 14:04:03 +04:00
Sepalani
6238834c05
Common/Network: Add InsertObj helper
2022-07-10 13:56:33 +04:00
Sepalani
4efe1e7ca7
Common/Network: Ensure offsetof is valid
2022-07-10 12:48:12 +04:00
Sepalani
b7bd2a4001
Common/Network: Use member initializer list
2022-07-10 12:31:59 +04:00
Sepalani
13957a627c
Common/Network: Remove unused constructors
2022-07-10 11:42:58 +04:00
Admiral H. Curtiss
5a7759e359
Merge pull request #10690 from schthack/BBA-tapless
...
BBA: Added BuiltIn device that allow BBA emulation without the need o…
2022-07-09 23:20:53 +02:00
schthack
087020b23a
Refactoring of the code to match dolphin style
...
Changed access for offsetof + some clean up
2022-07-09 17:01:22 -04:00
Christopher Rudolph
66f330e573
Add a check for libfmt version so that in case libfmt-9 is used the function is_compile_string is called under it's new namespace
2022-07-09 17:02:09 +02:00
Merry
3092f40e9f
Arm64Emitter: Simplify LogicalImm logic
...
Heavily simplify logical immediate encoding.
This is based on the observation that if a valid repeating element
exists, it repeats through `value`. Thus it does not matter which
one you analyse. Thus we skip over the least significent element
if LSB = 1 by masking it out with `inverse_mask_from_trailing_ones`,
to avoid the degenerate case of a stretch of 1 bits going 'round
the end' of the word.
2022-07-07 22:53:36 +01:00
OatmealDome
c6eb5e2623
FileUtil: Only attempt to write to the destination in Copy if there is actually content to write
2022-07-05 15:13:20 -04:00
schthack
01ada3850f
BBA: Added BuiltIn device that allow BBA emulation without the need of a TapDevice Configuration include a dns server setting
2022-07-02 18:02:50 -04:00
JosJuice
07a15a3228
Merge pull request #10624 from Minty-Meeo/resolve-gcc-warnings
...
Resolve Linux GCC Warnings
2022-07-02 09:17:44 +02:00
JMC47
b5f4b0dffe
Merge pull request #10803 from Zopolis4/clangingaround
...
Resolve additional warnings generated by clang
2022-07-02 03:12:34 -04:00
Minty-Meeo
69e32dea52
Resolve GCC Warnings
2022-06-30 15:26:48 -05:00
JMC47
5d04e1e1de
Merge pull request #10518 from iwubcode/draw-mod
...
Introducing a 'GraphicsMod' system for creators
2022-06-28 13:35:39 -04:00
JMC47
e50e45f400
Merge pull request #10700 from sepalani/ssl-handshake
...
Socket: Fix some non-blocking connect edge cases
2022-06-27 21:39:36 -04:00
iwubcode
3857e1fa66
Core: add GraphicsMod directory
2022-06-26 21:53:21 -05:00
Zopolis4
5d2290ba3c
Removed unused variable MAX_MSGLEN in LogManager.cpp
2022-06-24 14:57:03 +10:00
Shawn Hoffman
29ddd0e6f0
windows: detect and warn if running x64 dolphin on arm64
2022-06-22 15:33:12 -07:00
JMC47
9315ac7071
Merge pull request #10587 from AdmiralCurtiss/memcard-path-unify
...
Raw Memory Card Path handling unification and consistency fixes.
2022-06-13 20:18:36 -04:00
Tillmann Karras
59dfc43949
Common: replace std::aligned_storage_t with alignas
...
C++23 deprecates std::aligned_storage_t while alignas works since C++11.
This fixes issue 12925.
2022-06-13 00:06:19 +01:00
Sepalani
cbadc6e81a
NetworkCaptureLogger: Move ErrorState struct to Common/Network
2022-06-08 19:06:42 +04:00
JMC47
daf8e3ddde
Merge pull request #10462 from OatmealDome/steam-runtime
...
DolphinQt: Add support for a Steam Runtime build
2022-06-06 20:18:06 -04:00
Tillmann Karras
79a7bf02eb
CMake: rename minizip to minizip-ng
...
minizip-ng is the new name used by the upstream project as well as all
distros other than Fedora (but it looks like it will be renamed there).
2022-06-06 14:21:43 +02:00
Admiral H. Curtiss
b1d1f2aa06
Common/StringUtil: Add convenience function for converting paths to use forward slashes on Windows.
2022-06-05 21:24:45 +02:00
Mai M
84944625df
Merge pull request #10714 from OatmealDome/macos-mojave-bump
...
BuildMacOSUniversalBinary: Bump minimum macOS to 10.14
2022-06-02 20:20:52 -04:00
OatmealDome
1cb3058abe
MemoryUtil: Remove __builtin_available for macOS 10.14
2022-06-01 22:57:56 -04:00
Dentomologist
e0c9ae16b9
FileUtil: Refactor CreateSysDirectoryPath()
2022-05-31 16:18:08 -07:00
Dentomologist
c2be78079c
FileUtil: Remove GetSysDirectory log spam
...
Create and log path the first time GetSysDirectory is called, then just
return the path on future calls.
2022-05-31 16:18:08 -07:00
Dentomologist
4d563ce4d1
Android: Ensure File::s_android_sys_directory is set only once
2022-05-31 16:18:08 -07:00
OatmealDome
e679502a5d
GLX: Guard against redefinition of PFNGLXSWAPINTERVALEXTPROC
...
This type is already declared in glxext.h in the Steam Runtime.
2022-05-29 13:50:32 -04:00
Dentomologist
c8e20c569b
Convert PointerWrap::Mode to enum class
2022-05-25 13:16:46 -07:00
Dentomologist
f6b9acccfc
Common: Refactor PointerWrap
2022-05-25 13:06:41 -07:00
Admiral H. Curtiss
f68c3b758e
Common/Network: Use std::array in IPv4Header.
2022-05-23 02:01:59 +02:00
JMC47
3a3357444e
Merge pull request #8067 from endrift/hsp
...
Preliminary HSP support
2022-05-22 13:42:27 -04:00
Vicki Pfau
6a26b0ce8a
HW: Initial HSP implementation with ARAM expansion
2022-05-21 17:05:49 -07:00
Admiral H. Curtiss
580c721c82
cmake: Don't use PCH with Qt6.
2022-05-22 01:19:44 +02:00
Scott Mansell
876f6651b4
cmake: fix PCH to work with msvc/ninja
...
Ninja puts way more effort into compiling targets in parallel, and
ignores dependenceis until link time.
So we need to jump though hoops to force ninja to compile
pch.cpp before any targets which depend on the PCH.
2022-05-22 00:29:47 +02:00
Scott Mansell
0909e00117
cmake: fix MSVC PCH support
...
I'm not sure if the previous implementation ever worked.
2022-05-22 00:29:47 +02:00
Scott Mansell
987f270083
cmake: fix buggy target sources on windows
...
I have no idea why cmake supports PUBLIC on target_sources,
but it does. It causes all targets that depend on this target
to try and include the files in their sources.
Except it doesn't take paths into account, so it breaks. Mabye
it would work if you used an abolute source? But I'm not sure
there is a sane usecase.
2022-05-22 00:29:46 +02:00
Pokechu22
5f9212dd84
Common/LogManager: Remove old printf-style logging functions
2022-05-19 12:41:58 -07:00
Shawn Hoffman
fa17153ebc
fmt: use make_format_args instead of make_args_checked
...
make_args_checked is deprecated
see https://github.com/fmtlib/fmt/pull/2760 and the linked comment
2022-05-10 19:25:48 -07:00
Tilka
ac643825ce
Merge pull request #10628 from Minty-Meeo/force_inline-minor-change
...
Change _WIN32 check to a _MSC_VER check in Inline.h
2022-05-03 23:07:40 +01:00
Minty-Meeo
9c22205ab1
Change _WIN32 check to a _MSC_VER check in Inline.h
...
This is compiler dependent, not OS dependent.
2022-05-02 01:57:36 -05:00
Shawn Hoffman
2808909a97
msbuild: simplify lang/scm projects a bit
2022-04-27 15:06:04 -07:00
Admiral H. Curtiss
ef760ee012
Common/PointerWrap: Prevent reads/writes past the end of the buffer.
2022-04-18 23:48:00 +02:00
Admiral H. Curtiss
853cf4f818
Common/PointerWrap: Hide internals.
2022-04-18 03:41:14 +02:00
Admiral H. Curtiss
0a4805c0b9
Merge pull request #10582 from AdmiralCurtiss/fmt-float
...
Common/StringUtil: Use simpler formatting for floats and doubles.
2022-04-16 03:42:55 +02:00
Admiral H. Curtiss
5c687fc2a3
Common/StringUtil: Use simpler formatting for floats and doubles.
2022-04-12 23:35:19 +02:00
Shawn Hoffman
ef8e461ca2
windows: buildfix if pch not used
2022-04-12 12:28:57 -07:00
Admiral H. Curtiss
36134abd0e
Common/LogManager: Add generic printf-style log function that takes a va_list instead of va_args.
2022-04-09 01:41:40 +02:00
Admiral H. Curtiss
23508cafb2
Merge pull request #7675 from TryTwo/Debugger_Code_Features
...
Debugger: Get target memory in load/store instructions
2022-04-08 05:28:22 +02:00
TryTwo
53cf78d413
Gekko constistancy changes. Add context item to codeview to show or copy a load/store target memory address from instructions at or near PC when paused.
2022-03-17 12:53:38 -07:00
Léo Lam
bf261f6144
Merge pull request #10493 from jordan-woyak/netplay-show-traversal-external-port
...
NetPlayDialog: Display external IP/Port as seen by the traversal server.
2022-03-15 16:03:28 +01:00
Léo Lam
da6f86f381
Merge pull request #10496 from JosJuice/mappingcommon-split
...
Move parts of MappingCommon out of DolphinQt
2022-03-15 15:54:04 +01:00
Jordan Woyak
c058c8e1a6
NetPlayDialog: Display external IP/Port as seen by the traversal server when it's used.
2022-03-15 01:56:16 -05:00
Pokechu22
0f3832dec6
Common/FileUtil: Change logging to debug level
...
These messages hid other, more important, ones often. I have left AttemptMaxTimesWithExponentialDelay and GetSysDirectory/SetSysDirectory as info, since those are called infrequently and can be useful to the end-user.
2022-03-08 14:07:37 -08:00
JosJuice
1bc057614e
Move parts of MappingCommon out of DolphinQt
...
Some of the functions in MappingCommon would be useful to use on
mobile in the future.
2022-03-06 14:30:49 +01:00
JosJuice
5446daaef9
Common: Make DynamicLibrary non-copyable
...
The default implementations of DynamicLibrary's copy and move
constructors and assignment operators are unsafe.
2022-03-05 23:40:41 +01:00
Léo Lam
bcc14d32b8
Merge pull request #10482 from Dentomologist/remove_redundant_statement
...
FileUtil: Remove redundant statement
2022-03-02 12:27:21 +01:00
JMC47
ea116fbbdf
Merge pull request #9834 from AdmiralCurtiss/fastmem-reserve-region-linux
...
MemArena: Keep fastmem memory region mapped on Linux to ensure nothing allocates within the fastmem space.
2022-02-28 12:46:34 -05:00
Dentomologist
01bd5e15ba
FileUtil: Remove redundant statement
2022-02-25 21:16:07 -08:00
JosJuice
128fa8aec3
Merge pull request #10388 from Dentomologist/android-fix-unused-variable-warning
...
[Android] Fix unused variable warning
2022-02-20 18:56:50 +01:00
JosJuice
35b436bd6b
Merge pull request #10377 from Pokechu22/warning-fixes-jan-2022
...
Fix several compile warnings on GCC
2022-02-18 21:05:42 +01:00
Merry
be81fe86e1
JitRegister: Use fmt
...
Prefer fmt to printf-style formatting.
2022-02-16 20:09:38 +00:00
Admiral H. Curtiss
ffbe6cb21f
MemArena: Keep fastmem region mapped on Linux.
2022-02-14 22:14:41 +01:00
Admiral H. Curtiss
4a9553bf6d
MemArena: Load UnmapViewOfFileEx dynamically to restore Windows 7 support.
2022-02-14 21:57:18 +01:00
Admiral H. Curtiss
3a4de2b306
MemArena: Use Common::DynamicLibrary for m_api_ms_win_core_memory_l1_1_6_handle.
2022-02-14 21:57:15 +01:00
Pokechu22
15f80f7234
MathUtil: Mark lo in SaturatingCast as [[maybe_unused]]
...
It's unused in the case that T is unsigned and dest is signed (e.g. SaturatingCast<int, size_t> which appears SetIsoPaths in MainSettings.cpp)
2022-02-13 14:38:59 -08:00
JosJuice
989bdb8d6d
Common/CodeBlock: Call ResetCodePtr when decreasing region_size
...
Fixes https://bugs.dolphin-emu.org/issues/12827 .
A description of what was going wrong:
JitArm64::Init first calls CodeBlock::AllocCodeSpace, after which
CodeBlock and Arm64Emitter consider us to have 96 MB of code space
available. JitArm64::Init then calls AddChildCodeSpace, which is
supposed to take 64 MiB of that space and give it to m_far_code.
CodeBlock's view of how much space there is gets updated from 96 MiB
to 32 MiB, but due to the missing call, Arm64Emitter keeps thinking
that it has 96 MiB of space available.
The last thing JitArm64::Init does is to call ResetFreeMemoryRanges.
This function asks Arm64Emitter how much code space is available and
stores a range of that size in m_free_ranges_near, meaning that
m_free_ranges_near ends up being backed by both nearcode and farcode!
This is a ticking time bomb; as soon as we grab memory from
m_free_ranges_near which is backed by farcode, we're in trouble.
The crash I ran into in my testing was caused by fastmem code being
allocated in farcode (our backpatch handler only handles accesses made
from nearcode), but you may as well get errors caused by code intended
for nearcode overwriting code intended for farcode or vice versa.
So why did NBA Live 2005 crash when most games had no problems,
and why was the bug bisected to the commit that increased the size
of far code from 16 MiB to 64 MiB? Well, as long as we're only
using the first 32 MiB of the big 96 MiB range, everything works.
What happens with NBA Live 2005 (I have not investigated exactly
through what mechanism this happens) is that at some point the range
in m_free_ranges_near gets split into two ranges, one which is
backed by nearcode and one which is backed by farcode. Dolphin
prefers to select the biggest range available (we don't want to
pick a tiny 1 KiB range that may not be able to fit the whole block
we're about to emit, after all), and after increasing the size of
farcode to 64 MiB, farcode is bigger than nearcode.
2022-02-12 17:51:32 +01:00
Admiral H. Curtiss
79405de103
MemArena: Use placeholders on Windows.
2022-02-06 18:06:04 +01:00
Admiral H. Curtiss
a336c4386c
IOFile: Rename Clear() to ClearError() for clarity.
2022-01-29 06:49:22 +01:00
Admiral H. Curtiss
36cfcb530f
IOFile: Make origin parameter to Seek() an enum class.
2022-01-29 06:49:21 +01:00
Dentomologist
d3ae1bd415
[Android] Fix unused variable warning
...
Add [[maybe_unused]] attribute to ConsoleListener's m_use_color
2022-01-25 14:15:18 -08:00
JosJuice
7b8e846d0a
Merge pull request #10367 from Pokechu22/fmt-8.1.1
...
Update to fmt 8.1.1
2022-01-20 21:14:41 +01:00
Pokechu22
6e5f4125e3
Use Common::ToLower and Common::ToUpper
2022-01-16 17:00:12 -08:00
Pokechu22
aaec64501a
Create Common::ToLower and Common::ToUpper
2022-01-16 16:56:53 -08:00
Pokechu22
fefde0481d
Use EnumFormatter to generate names for EXI devices
...
This simplifies the code in GameCubePane, and allows us to use the EXIDeviceType enum in error messages.
2022-01-14 20:24:53 -08:00
Léo Lam
83c5446d85
Fix static initialisation order fiasco issue for Version variables
...
Fixes a crash that could occur if the static constructor function for
the MainSettings.cpp TU happened to run before the variables in
Common/Version.cpp are initialised. (This is known as the static
initialisation order fiasco.)
By using wrapper functions, those variables are now guaranteed to be
constructed on first use.
2022-01-14 00:04:22 +01:00
Pokechu22
fd04f4f32d
Replace use of of unsigned char* with fmt
...
Using unsigned char* or signed char* results in a deprecation warning, which is treated as an error. It needs to be casted to regular char* for it to work.
2022-01-13 11:11:08 -08:00
Pokechu22
1a92699455
Cast to int for enums that are not formattable
2022-01-13 11:11:08 -08:00
Pokechu22
ac46b91673
Make all fmt::formatter constructors constexpr
2022-01-13 11:11:08 -08:00
Pokechu22
78e43a4404
Make all custom fmt::formatter's format functions const
...
fmt 8.0.0 requires this.
2022-01-13 11:11:08 -08:00
Pokechu22
cc592ab814
Use fmt::runtime in FmtFormatT
...
This format string is by definition dynamic and can't be checked at compile time. There are other similar strings in the log handler and in asserts, but they use vformat and thus don't need fmt::runtime. We might be able to do a similar thing where the untranslated string is compile-time checked, but FmtFormatT is used in so few places that I don't want to handle that in this PR.
2022-01-13 11:11:08 -08:00
Pokechu22
54cf8d030c
Add fmt/xchar includes where wstring is used
2022-01-13 11:11:08 -08:00
Pokechu22
140c8217f6
Common: Create HRWrap
...
HRWrap now allows HRESULT to be formatted, giving useful information beyond "it failed" or a hex code that isn't obvious to most users. This commit does not add any uses of it, though.
2022-01-09 12:44:15 -08:00
Pokechu22
c296c34e00
Common/MsgHandler: Use caller's file and line number in log messages
...
This will assist with finding the source of a panic alert based on logs; before, Common\MsgHandler.cpp:113 (or similar) was always used.
2022-01-09 12:44:14 -08:00
Pokechu22
f55571ee5d
Common/MsgHandler: Fix PanicAlertFmtT not actually being translated
2022-01-09 12:44:14 -08:00
Pokechu22
2a5016c2f8
Common/MsgHandler: Remove use of lambda, as it breaks __func__
...
Specifically, this meant that __func__ in macros (namely ASSERT) would always be evaluate to "operator ()".
2022-01-09 12:44:14 -08:00
Pokechu22
558de04cfc
Common/Assert: Actually use the ASSERT_MSG's log type parameter
...
Since it was unused, nonexistent values were used in a few places. I've replaced them.
2022-01-09 12:44:14 -08:00
Pokechu22
bab3ff0157
Common/MsgHandler: Remove non-format variants of PanicAlert
...
They're no longer used.
2022-01-09 12:44:14 -08:00
Pokechu22
44e93e91d7
Common/Assert: Switch to fmt
2022-01-09 12:43:11 -08:00
Pokechu22
1c0ca09e6f
Common/Assert: Include the condition and function in the message
2022-01-09 12:43:11 -08:00
JosJuice
804f78e0e4
Android: Mark s_android_send_report as static
...
Fixes a compiler warning.
2022-01-06 12:20:09 +01:00
Mai M
7bd14c5d9f
Merge pull request #10338 from Pokechu22/natvis-improvements
...
Natvis improvements
2022-01-06 04:01:25 -05:00
JMC47
9a914d33d5
Merge pull request #9414 from DevJPM/master
...
Fix CPU Core Count detection and Enable Parallel Shader Compilation
2022-01-04 10:15:12 -05:00
Pokechu22
8e2b06906b
Create EnumMap natvis
2022-01-02 15:36:47 -08:00
Pokechu22
b96297f2ee
Improve BitField natvis
...
Now, enums are properly displayed, and BitFieldArray is also displayed nicely. Signed values also work correctly, and 1-bit fields are not treated as bools unless the bitfield is explicitly marked as a bool.
2022-01-02 14:39:34 -08:00
Pokechu22
301bc49efe
Common: Remove MD5.h
...
It uses DiscIO, and Common shouldn't depend on DiscIO. Instead, put this code in NetPlayClient.cpp.
2022-01-01 11:52:53 -08:00
Pokechu22
0c19f895d3
Replace remaining uses of zlib crc32 with Common/Hash.h
2022-01-01 10:36:38 -08:00
Pokechu22
2652aed85c
Common: Merge CRC32.h into Hash.h
...
This makes it easier to find the relevant functions.
2022-01-01 10:36:38 -08:00
Léo Lam
9a61514073
Merge pull request #10241 from AdmiralCurtiss/user-dir-consistency
...
Ensure user paths are stored in a consistent manner.
2022-01-01 02:32:24 +01:00
JMC47
1c8a7f1867
Merge pull request #10277 from AdmiralCurtiss/memarena-cleanup
...
MemArena: Cleanup & interface changes for safer memory mapping.
2021-12-29 19:06:47 -05:00
Admiral H. Curtiss
319b00f1fd
Config: Allow unregistering callbacks.
2021-12-25 23:32:49 +01:00
Admiral H. Curtiss
e54657254a
Core: Make format of D_WIIROOT_IDX consistent with the rest of the user directories.
2021-12-25 20:21:32 +01:00
Admiral H. Curtiss
3e1511ce98
Common/FileUtil: Ensure consistency for custom user paths.
2021-12-25 20:21:32 +01:00
Admiral H. Curtiss
1554128560
MemArena: Prepare interface for proper memory reservation.
2021-12-25 20:20:36 +01:00
Admiral H. Curtiss
812cc8b632
MemArena: Split into three separate files for each OS.
2021-12-25 20:20:36 +01:00
Pokechu22
95e0f833f9
Fifo analyzer: Display equations for color/alpha combiners
2021-12-18 15:21:48 -08:00
Pokechu22
2025763420
Treewide: Adjust order of includes
2021-12-10 14:49:57 -08:00
Pokechu22
8cf841ecc7
Fix saving RGBA images
...
PNG_FORMAT_RGB and PNG_COLOR_TYPE_RGB both evaluate to 2, but PNG_FORMAT_RGBA evaluates to 3 while PNG_COLOR_TYPE_RGBA evaluates to 6; the bit indicating a palette is 1 while the bit indicating alpha is 4.
2021-11-24 14:56:12 -08:00
Pokechu22
99e589cc98
Log libpng warnings and errors
2021-11-24 14:56:12 -08:00
Léo Lam
aa5cb35c86
Merge pull request #10143 from Pokechu22/png-compression-level
...
Add option for setting the PNG zlib compression level
2021-11-23 16:40:34 +01:00
JMC47
e5a4a86672
Merge pull request #10055 from JosJuice/jitarm64-reuse-memory
...
JitArm64: Codegen space reuse
2021-11-20 17:35:24 -05:00
DevJPM
61cfd8696e
Fix CPU Core Count detection and Enable Parallel Shader Compilation
...
This does this following things:
- Default to the runtime automatic number of threads for pre-compiling shaders
- Adds a distinct automatic thread count computation for pre-compilation (which has less other things going on
and should scale better beyond 4 cores)
- Removes the unused logical_core_count field from the CPU detection
- Changes the semantics of num_cores from maximaum addressable number of cores to actually available CPU cores
(which is also how it was actually used)
- Updates the computation of the HTT flag now that AMD no longer lies about it for its Zen processors
- Background shader compilation is *not* enabled by default
2021-11-20 16:08:10 +01:00
Pokechu22
94ccf765af
Add option for setting the PNG zlib compression level
2021-11-18 13:10:22 -08:00
Pokechu22
d2041b4c2a
VideoCommon: Add signed version of BitfieldExtract
2021-11-17 20:04:33 -08:00
JosJuice
3e84279919
Merge pull request #10208 from thatSteveFan/patch-1
...
Minor comment fix in Matrix.cpp
2021-11-13 15:09:28 +01:00
Shawn Hoffman
4008188654
msvc: update to vs2022 and windows sdk 10.0.22000
2021-11-11 08:01:26 -08:00
thatSteveFan
834a59d89b
Minor comment fix in Matrix.cpp
...
Fix comment to say (NxM times MxP).
2021-11-08 15:30:39 -08:00
Mai M
6c72e6814d
Merge pull request #10169 from leoetlino/fmt-localtime
...
Use fmt::localtime instead of thread-unsafe std::localtime
2021-11-07 00:08:14 -04:00
Merry
7c2b09e156
Arm64Emitter: Add FRINTI instruction
2021-11-06 19:15:26 +00:00
Emmanuel Gil Peyrot
3d662e746b
Core: Fix a -Wshadow warning in gcc 11
...
This moves the only direct call to zlib’s crc32() into its own
translation unit, but that operation is cold enough that this won’t
matter in the slightest. crc32_z() would be more appropriate, but
Android has an older zlib version…
2021-11-02 13:50:21 +01:00
Pokechu22
04d8cdfe88
Convert LOG_TYPE and LOG_LEVELS to enum class
2021-10-24 11:48:36 -07:00
Pokechu22
ba107819ec
Create EnumMap
2021-10-24 11:48:36 -07:00
Admiral H. Curtiss
a4da56e5e6
CommonPaths: Add a Riivolution subfolder in Load.
2021-10-24 00:09:06 +02:00
Admiral H. Curtiss
f972ddf32f
Common/FileUtil: Fix incorrect (32-bit) stat struct being used on Windows, which was hidden by a define in CommonFuncs.h.
2021-10-23 03:50:47 +02:00
Léo Lam
fd7df2ccae
Use fmt::localtime instead of thread-unsafe std::localtime
...
fmt::localtime is also less awkward to use compared to std::localtime.
2021-10-15 22:49:13 +02:00
Léo Lam
7855e5f73b
Turn MAX_LOGLEVEL into a true constant (and fix self-comparison warning)
...
This replaces the MAX_LOGLEVEL define with a constexpr variable
in order to fix self-comparison warnings in the logging macros
when compiling with Clang. (Without this change, the log level check
in the logging macros is expanded into something like this:
`if (LINFO <= LINFO)`, which triggers a tautological compare warning.)
2021-10-15 21:51:01 +02:00
JosJuice
44beaeaff5
Arm64Emitter: Check end of allocated space when emitting code
...
JitArm64 port of 5b52b3e
.
2021-10-13 21:52:16 +02:00
Pokechu22
78bfd25964
Fix all uninitialized variable warnings (C26495)
2021-10-13 12:32:16 -07:00
Pokechu22
aacc1a5e49
IOFile: Add std::array functions
2021-10-13 11:44:28 -07:00
Léo Lam
f19da1cf92
Merge pull request #10118 from lioncash/messageid
...
NetPlayProto: Remove lots of casts to MessageId when inserting enum values into packets
2021-10-13 02:27:52 +02:00
JMC47
3bfb3fa52b
Merge pull request #9884 from JosJuice/jitarm64-paired-loadstore-addr
...
JitArm64: Improve psq_l/psq_st address checking
2021-10-11 16:49:26 -04:00
Pokechu22
ec9db320d3
Fix AbortOnPanicAlert with PanicAlertFmt
...
PR #10066 added functionality to call std::abort when a panic alert occurs; however, that PR only implemented it for MsgAlert and not MsgAlertFmtImpl, meaning that the functionality was not used with PanicAlertFmt (only PanicAlert, which is not used frequently).
2021-10-02 17:24:09 -07:00
Lioncash
07af775afa
SFMLHelper: Add stream insertion overload helpers for enum types
...
Will be used in future changes to eliminate the need to cast when
inserting various message IDs
2021-09-22 15:42:01 -04:00
Léo Lam
6129290d31
Merge pull request #10057 from JosJuice/jitarm64-divwx
...
JitArm64: Optimize divwx
2021-09-20 15:37:57 +02:00
Léo Lam
b43cee8fe4
Merge pull request #10098 from AdmiralCurtiss/scan-dir-tree-trailing-slash
...
Common/FileUtil: Strip trailing path separator in ScanDirectoryTree().
2021-09-20 14:50:11 +02:00
Pokechu22
b8f4a4ae44
GLInterface: Remove unneeded wglShareLists call
...
When RenderDoc is attached, wglShareLists fails for some reason (see baldurk/renderdoc#2361 ). wglCreateContextAttribsARB has a parameter for the share context, so there's no reason to use a separate wglShareLists call.
Co-authored-by: baldurk <baldurk@baldurk.org>
2021-09-14 10:55:33 -07:00
Admiral H. Curtiss
f76aaf65f6
Common/FileUtil: Strip trailing path separator in ScanDirectoryTree().
2021-09-14 17:39:38 +02:00
JosJuice
de21dc5fd9
JitArm64: Add bitset constants for caller saved registers
2021-09-08 21:26:05 +02:00
Léo Lam
e091c2e817
Add an option to abort when a panic alert occurs
...
Prompted by https://dolphin.ci/#/builders/24/builds/985
A 1-character typo in a recent PR caused FifoCI builds to break
horribly and spew millions of panic alerts until buildbot crashed.
This PR adds a new config option -- defaulting to off -- that allows
Dolphin to abort early on when a panic alert occurs instead of
continuing forever.
2021-08-29 02:02:07 +02:00
JosJuice
9889e7eb33
JitArm64: divwx - Optimize power-of-two divisors
...
Power-of-two divisors can be done more elegantly, so handle them
separately.
2021-08-26 15:04:55 +02:00
JosJuice
09cdb076a3
JitArm64: divwx - Optimize constant dividend
...
When the dividend is known at compile time, we can eliminate some
of the branching and precompute the result for the overflow case.
2021-08-26 14:50:01 +02:00
OatmealDome
e5a80995dc
Bump minimum macOS to 10.13 High Sierra
2021-08-17 16:27:22 -04:00
JosJuice
a90b0a1c93
JitArm64: Implement mtfsfx
...
The sixth and final part of implementing the FPSCR system register
instructions.
2021-07-31 23:50:20 +02:00
Dentomologist
f5e5e8553c
StringUtil: Remove unused function BuildCompleteFilename
2021-07-21 12:39:00 -07:00
JMC47
a1e806ed76
Merge pull request #9600 from Bonta0/mgba-pr
...
Full GBA Controllers Integration with mGBA
2021-07-21 02:36:43 -04:00
Dentomologist
fe670a3e68
FileUtil: Remove duplication in FileInfo constructor
2021-07-19 11:50:17 -07:00
Shawn Hoffman
8bddd8c675
remove SetRoundMode
...
we only care about SSE rounding mode, and set
that manually in SetSIMDMode
2021-07-17 19:29:22 -07:00
Tilka
3c90b657f3
Merge pull request #9907 from shuffle2/roundmode-bitfield
...
make FPSCR.RN an enum
2021-07-18 03:12:28 +01:00
Shawn Hoffman
197075293d
make FPSCR.RN an enum
2021-07-17 18:55:06 -07:00
Shawn Hoffman
c89ae53677
msvc: remove warning disables which no longer fire
2021-07-17 18:24:36 -07:00
Shawn Hoffman
f5b05ae080
remove an outdated comment
...
seems to have been solved 5 years ago by
b707e199c2
2021-07-17 17:46:57 -07:00
Bonta
45f2461a53
NetPlay: GBA Support
2021-07-13 16:43:59 +02:00
Bonta
110887435c
Config: GBA settings
2021-07-13 16:41:18 +02:00
Bonta
44aaf108d1
Externals: Integrate mGBA as a submodule
2021-07-13 16:39:29 +02:00
Léo Lam
162af2a7bb
Merge pull request #9870 from OatmealDome/ui-thread
...
macOS: Move UI API calls to the main thread
2021-07-13 03:29:49 +02:00
JosJuice
8af5095ff4
JitArm64: Stop using hand-encoded logical immediates
2021-07-12 22:25:49 +02:00
JosJuice
9e80db123f
JitArm64: Encode logical immediates at compile-time where possible
...
Manually encoding and decoding logical immediates is error-prone.
Using ORRI2R and friends lets us avoid doing the work manually,
but in exchange, there is a runtime performance penalty. It's
probably rather small, but still, it would be nice if we could
let the compiler do the work at compile-time. And that's exactly
what this commit does, so now I have no excuse for trying to
manually write logical immediates anymore.
2021-07-10 20:43:59 +02:00
JosJuice
10861ed8ce
JitArm64: Turn IsImmLogical into a constexpr constructor
2021-07-10 20:31:28 +02:00
JosJuice
ab024b218e
JitArm64: Accept LogicalImm struct as bitwise inst parameter
2021-07-10 20:13:11 +02:00
JosJuice
cbbd3d3956
Arm64Emitter: Fix 64-bit TBZ/TBNZ encoding
...
We haven't actually used 64-bit TBZ/TBNZ anywhere in Dolphin, so
this mistake hasn't broken anything, but let's fix it regardless.
2021-07-07 12:21:07 +02:00
OatmealDome
8c728945fb
AGL: Silence OpenGL deprecation warnings
2021-07-06 14:31:01 -04:00
OatmealDome
4d944342fc
AGL: Move more UI API calls to the main thread
2021-07-06 14:30:15 -04:00