Léo Lam
cb19472f54
Merge pull request #10372 from Pokechu22/discio-core-dep
...
CMakeLists: Change DiscIO dependency from common to core
2022-01-17 00:39:55 +01:00
Pokechu22
ad9e8d97a9
CMakeLists: Replace tab characters with spaces
...
This commit only touches CMakeLists in Source and the main one; it doesn't touch them in Externals.
2022-01-16 15:20:40 -08:00
Pokechu22
b7ac11080e
Merge pull request #10364 from Pokechu22/exi-device-refactor
...
Create enum classes for EXI devices and slots
2022-01-16 15:10:55 -08:00
Pokechu22
65788290f6
Raise a panic alert if a movie is recorded with memcards but no memcards are inserted
2022-01-16 14:21:33 -08:00
Pokechu22
19ef936e27
Use Slot in GameCubePane
2022-01-16 14:21:33 -08:00
Pokechu22
9109258b85
Use Slot in GCMemcardManager
2022-01-16 14:21:32 -08:00
Pokechu22
777bb4d82c
Use Slot in EXI devices
2022-01-16 14:21:28 -08:00
Pokechu22
7935e614d1
CMakeLists: Change DiscIO dependency from common to core
...
DiscIO depends on some IOS functions and other functions, which are in Core and not Common. This results in link errors if using DiscIO on its own (which is why DolphinTool had a listed dependency on videocommon; videocommon has a dependency on core so adding that made things build).
2022-01-16 13:29:51 -08:00
Pokechu22
3f0b23ed2b
Create Slot enum class for EXI slots
2022-01-14 20:24: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
Pokechu22
d354163fbe
Replace TEXIDevices with an enum class
2022-01-14 20:24:53 -08:00
Mai M
e8bbfc26fe
Merge pull request #10370 from leoetlino/siof
...
Fix static initialisation order fiasco issue for Version variables
2022-01-13 23:34:55 -05: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
29d6dd609c
Fix non-constexpr format strings
2022-01-13 11:11:08 -08:00
Pokechu22
18cf8ac767
Create EnumFormatter for WD Command enums
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
5465775d11
Fix ambiguous uses of format_to
...
At least in MSVC (which is not restricted from targetting C++20), these can be resolved to either std::format_to or fmt::format_to (though I'm not sure why the std one is available). We want the latter.
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
0cc211d1ef
Use fmt::format_string
2022-01-13 11:11:08 -08:00
Pokechu22
ff8965c40b
Replace uses of undocumented/deprecated fmt::format_to overload
...
This was deprecated in fmt 8.0.0.
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
cb662509f2
CMake: Bump fmt version requirement to 8.0
...
We will be using fmt::runtime, which was added in fmt 8.0.0.
2022-01-13 11:11:01 -08:00
Pokechu22
1a2e88cbf3
Externals: Update fmt to 8.1.1
2022-01-13 11:11:01 -08:00
Léo Lam
07fd17445c
Merge pull request #10366 from Pokechu22/bad-int3-constructor
...
PixelShaderGen: Fix invalid use of int3(0)
2022-01-13 14:37:36 +01:00
Léo Lam
21b9e6a34f
Merge pull request #10355 from Pokechu22/fifo-player-config
...
FifoPlayer: Store early memory updates option in the config and allow changing loop option at runtime
2022-01-13 14:36:48 +01:00
Mai M
1cea399e9c
Merge pull request #10345 from jordan-woyak/modifier-range
...
InputCommon: Re-enable "Modifier" "Range" settings.
2022-01-13 08:32:15 -05:00
Mai M
cfb8b9bcf4
Merge pull request #10357 from JosJuice/android-main-debug
...
Android: Make Main.Debug setting declarations match C++
2022-01-13 07:41:35 -05:00
Mai M
7ebc689b57
Merge pull request #10360 from JosJuice/android-div-6
...
Android: Don't divide SI device by 6
2022-01-13 07:41:08 -05:00
Pokechu22
fc0d958e26
PixelShaderGen: Fix invalid use of int3(0)
...
This syntax is allowed by GLSL, but HLSL doesn't allow it. This meant that games using R8 comparisons in equal mode would produce shaders that failed to compile. Super Mario Galaxy's water levels were affected by this.
2022-01-12 21:50:34 -08:00
JMC47
e4372a317d
Merge pull request #10247 from mbc07/GameINI
...
Game INI updates
2022-01-11 19:15:41 -05:00
JMC47
ca96421f42
Merge pull request #10365 from JosJuice/missing-ini-section
...
Config: Add missing legacy game INI mappings
2022-01-11 19:12:58 -05:00
JosJuice
2ca37922dc
Config: Use "Controls" section for PadType in game INIs
...
This matches BootManager.cpp's old behavior.
Note: The other settings of the "Controls" section (WiimoteSource
and WiimoteSourceBB) are still handled in BootManager.cpp.
2022-01-11 22:38:37 +01:00
JosJuice
5283a1dcc6
Config: Add "DSP" to GetINIToSectionMap
...
The "DSP" game INI section name was supported by BootManager.cpp
before the section was ported to the new config system.
For backwards compatibility, we should keep supporting it.
Should fix https://bugs.dolphin-emu.org/issues/12792
2022-01-11 22:37:02 +01:00
JMC47
c18abfaecc
Merge pull request #10356 from AdmiralCurtiss/config-port-core-4
...
Config: Port remaining Core settings to new config system (the rest).
2022-01-11 16:08:19 -05:00
JMC47
d32b13fb36
Merge pull request #10363 from JosJuice/systemtimers-dma-period
...
SystemTimers: Refactor, get rid of s_audio_dma_period
2022-01-11 09:30:41 -05:00
JosJuice
3da6487531
Merge pull request #10209 from Pokechu22/assert-fmt
...
Assertion and panic alert improvements
2022-01-09 22:27:18 +01:00
Pokechu22
ca9bf3174f
Use HRWrap in remaining locations
...
Note that D3DCommon can't use DX11HRWrap or DX12HRWrap since it's shared between them.
2022-01-09 12:44:55 -08:00
Pokechu22
1b32e6dae2
VideoBackends/D3D12: Include HRESULT in error messages
2022-01-09 12:44:53 -08:00
Pokechu22
23cdb5c576
VideoBackends/D3D11: Include HRESULT in error messages
2022-01-09 12:44:15 -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
82acfa6a46
VideoBackends/D3D: Eliminate CHECK in favor of ASSERT_MSG
2022-01-09 12:44:13 -08:00
Pokechu22
161c627466
Treewide: Remove unused inclusions of <cinttypes>
...
Most of these became unneeded when fmt was introduced.
2022-01-09 12:43:11 -08:00