Silent
2bc9e09456
Core/CPU: Do not yield to UI from CPU methods
...
Core::RunAsCPUThread may be called from Qt signals, and if code yields to UI there
then it results in infinite recursion
2019-08-18 17:39:26 +02:00
Tillmann Karras
ee85ec95b4
Jit64: fix mcrfs
...
It was deleting the wrong bits. This fixes issue 10074 (Super Monkey
Ball 2 minigame). I introduced this regression in
0f2c656687
.
2019-08-18 03:49:32 +01:00
Silent
12ac784a41
Fix "Muted%" OSD message when muting sounds via a hotkey
2019-08-17 12:17:09 +02:00
Admiral H. Curtiss
7b9d43a834
Qt/GCMemcardManager and Qt/GameCubePane: Give detailed error messages for invalid memory cards.
2019-08-15 18:21:48 +02:00
Admiral H. Curtiss
ba8ffd9391
GCMemcard: Check if the Directory's number-of-blocks claim for files matches the BAT, and report an error if it doesn't.
2019-08-15 18:21:48 +02:00
Admiral H. Curtiss
7d4cabea07
GCMemcard: The update counters are interpreted as signed values for the newer-than comparison.
2019-08-15 18:21:47 +02:00
Admiral H. Curtiss
8fc2f0ff2d
GCMemcard: Rename MemCardXMb constants to MBIT_SIZE_MEMORY_CARD_X for consistency with other constants.
2019-08-15 18:21:45 +02:00
Admiral H. Curtiss
b54a49eaaf
GCMemcard: Rework construction logic to better match our knowledge of the format, while providing better error reporting facilities.
2019-08-15 18:18:56 +02:00
QuellaZhang
e67eb4693e
Fix implicit false-to-nullptr conversions
2019-08-15 17:49:57 +02:00
JosJuice
a66ca85dd5
DolphinQt: Fix the enabling/disabling of Movie items even more
...
Play can only be used when a game is selected and emulation is not
running. Start can be used when a game is selected (to start from
cold boot) or when emulation is running (to start from a savestate).
https://bugs.dolphin-emu.org/issues/11826
2019-08-14 13:45:07 +02:00
Connor McLaughlin
181d79228a
Merge pull request #8275 from bdr99/netplay-player-log
...
NetPlay: Show a message in chat when a player joins or leaves
2019-08-14 11:23:18 +10:00
Brandon Rothweiler
8857db9833
Check validity of iterator before dereferencing
2019-08-13 18:00:12 -07:00
JosJuice
f3dac2c041
BTReal.cpp: Don't use bitwise operators on enum values
...
https://bugs.dolphin-emu.org/issues/11692#note-11
2019-08-13 23:58:18 +02:00
Silent
b6df0bff93
Make --batch run Dolphin in headless mode, provided --exec is also passed
2019-08-11 20:58:04 +02:00
Silent
80e8037e0b
Truly use emplace_back in CommandLineConfigLayerLoader constructor
2019-08-11 20:43:18 +02:00
JosJuice
9cc719db02
Fix TitleDatabase
...
a2a1e04
regression.
2019-08-09 18:20:45 +02:00
JosJuice
393709a45a
Also override the SYSCONF country setting
...
Fixes https://bugs.dolphin-emu.org/issues/10066
2019-08-09 17:33:05 +02:00
JosJuice
561a4cfcce
Replace "Override Language on NTSC Games" with "Allow Mismatched Region Settings"
...
This new setting is like Override Language on NTSC Games, except
instead of only applying to the GameCube language setting,
it also applies to the Wii language setting.
Fixes https://bugs.dolphin-emu.org/issues/11299
2019-08-09 17:33:05 +02:00
Connor McLaughlin
b88e5610ab
Merge pull request #8204 from JosJuice/volumeverifier-underdump-wbfs
...
VolumeVerifier: Show underdump warnings for WBFS/CISO too
2019-08-10 01:24:15 +10:00
Connor McLaughlin
428ae5a43d
Merge pull request #8172 from nokturnusmf/relative-input-hold
...
Added (held) key for relative input
2019-08-10 00:37:53 +10:00
JosJuice
8c8bab3657
VolumeVerifier: Show underdump warnings for WBFS/CISO too
2019-08-09 16:13:50 +02:00
Connor McLaughlin
5c3e9a34c3
Merge pull request #8226 from lioncash/fmt-core
...
Core/Core: Use fmt where applicable
2019-08-09 23:43:39 +10:00
Connor McLaughlin
8be5ee9fe2
Merge pull request #8277 from lioncash/code
...
DolphinQt/Config/ARCodeWidget: Avoid unnecessary disk operations
2019-08-09 23:42:55 +10:00
Connor McLaughlin
48ca2c6f2e
Merge pull request #8233 from JosJuice/stringutil-string-view
...
StringUtil: Use std::string_view more
2019-08-09 23:39:01 +10:00
Connor McLaughlin
0ab7e2eed7
Merge pull request #8223 from JosJuice/titledatabase-unknown-language
...
TitleDatabase: Don't crash on unknown language
2019-08-09 23:35:53 +10:00
Connor McLaughlin
f64f4a08c8
Merge pull request #8290 from lioncash/const-fn
...
UICommon/NetPlayIndex: Minor interface cleanup
2019-08-09 23:05:48 +10:00
Connor McLaughlin
ec1fe41eb2
Merge pull request #8298 from CookiePLMonster/win-updater-hide-fix
...
WinUpdater: Properly hide window on startup as intended
2019-08-09 23:04:53 +10:00
JosJuice
cd02ca17ce
VolumeVerifier: Allocate QProgressDialog on stack
...
No reason to have it on the heap.
This also lets us skip calling reset, since the dialog closes
when the QProgressDialog object goes out of scope.
2019-08-09 14:47:15 +02:00
Connor McLaughlin
e87a3f91a9
Merge pull request #8303 from JosJuice/volumeverifier-very-small
...
Fix problems with running VolumeVerifier on very small disc images
2019-08-09 22:16:33 +10:00
Connor McLaughlin
2df522d4eb
Merge pull request #8299 from JosJuice/volumeverifier-performance
...
VolumeVerifier: Performance improvements
2019-08-09 22:10:09 +10:00
Connor McLaughlin
22ed2c0e0c
Merge pull request #8269 from lioncash/osd-move
...
VideoCommon/OnScreenDisplay: Minor cleanup
2019-08-08 12:38:44 +10:00
Connor McLaughlin
e5a4a86f59
Merge pull request #8297 from Miksel12/bugreport-qt
...
DolphinQt: Add bug tracker button
2019-08-08 12:27:05 +10:00
Connor McLaughlin
1bd8f03362
Merge pull request #8271 from lioncash/qstring
...
DolphinQt: Replace unnecessary QStringLiterals with alternatives where applicable
2019-08-08 12:25:30 +10:00
Connor McLaughlin
1092efa77a
Merge pull request #8276 from stenzek/adreno-efb-access
...
Fix CPU EFB access on Adreno with Vulkan backend
2019-08-08 12:23:27 +10:00
Connor McLaughlin
9477c8b0ed
Merge pull request #8293 from lioncash/ref
...
VideoCommon/TextureCacheBase: Make OnConfigChanged's parameter a const reference
2019-08-08 12:17:26 +10:00
JosJuice
107291dc5a
Fix problems with running VolumeVerifier on very small disc images
2019-08-07 19:48:10 +02:00
Silent
8e79705854
WinUpdater: Wait in UI::Init until window is done creating to avoid losing UI::SetVisible signals
2019-08-06 19:24:38 +02:00
JosJuice
34fb608dd6
VolumeVerifier: Multithreading
2019-08-06 16:42:59 +02:00
JosJuice
f754a1a548
VolumeVerifier: Don't read data multiple times
2019-08-06 16:32:01 +02:00
Silent
f70efbb963
WinUpdater: Create updater window as hidden by default
...
UpdaterCommon attempts to hide updater window directly after creating,
so creating it hidden avoids the window from showing for a split second
2019-08-05 21:47:05 +02:00
Pokechu22
7c892c0c6e
Use valid IR calibration data
...
Previously, IR calibration data with an invalid checksum was used, because the calibration produced a strange offset. I've replaced it with calibration data that encodes the same values as the data Nintendo falls back to when the checksum is bad.
2019-08-05 10:39:32 -07:00
Mike Kuijl
03b20c702d
DolphinQt: Add bug tracker button
2019-08-05 18:45:14 +02:00
Connor McLaughlin
24718c1a38
Merge pull request #8294 from lioncash/render-const
...
VideoCommon/RenderBase: Make functions const where applicable
2019-08-05 16:25:21 +10:00
Lioncash
07aa18eb2b
VideoCommon/TextureCacheBase: Collapse for loop into a fill() in Invalidate()
...
Same thing, less code.
2019-08-04 23:30:27 -04:00
Lioncash
d52dd2e04f
VideoCommon/TextureCacheBase: Use emplace_back where applicable
...
Same thing, less code.
2019-08-04 23:28:14 -04:00
Lioncash
fd12ae1408
VideoCommon/TextureCacheBase: Remove use of the texture cache global
...
We can just call the functions that are part of the interface instead of
using the global in order to execute those functions.
2019-08-04 23:23:04 -04:00
Lioncash
7366b4281f
VideoCommon/RenderBase: Remove dependency on renderer global within renderer
...
There's no need to have a dependency when we can simply call the
function itself as part of the instance itself.
2019-08-04 23:01:19 -04:00
Lioncash
cfdfbbff38
VideoCommon/RenderBase: Use structured bindings where applicable
...
Same behavior, but immediately assigns to variables, allowing them to be
const.
2019-08-04 22:59:07 -04:00
Lioncash
dd5b8895fe
VideoCommon/RenderBase: Make functions const where applicable
2019-08-04 22:52:00 -04:00
Lioncash
86a651e27f
VideoCommon/TextureCacheBase: Remove dependence on global variables from OnConfigChanged()
...
The active config will always be passed as the reference parameter, we
can make use of the parameter instead of accessing the global variable.
2019-08-04 22:33:18 -04:00
Lioncash
7d017be666
VideoCommon/TextureCacheBase: Make OnConfigChanged's parameter a const reference
...
This reference isn't actually modified within this function
2019-08-04 22:31:27 -04:00
Lioncash
8285a94d93
UICommon/NetPlayIndex: Take std::vector by const reference in ParseResponse()
...
This variable isn't std::moved anywhere and is just read out of into a
string. Instead of making a copy, and then another copy of the data into
a std::string, we can take it by reference, only copying the data once.
2019-08-04 12:36:52 -04:00
Lioncash
75f3656804
UICommon/NetPlayIndex: Use a std::string_view for EncryptID()/DecryptID()
...
These parameters only acted as views into the provided strings, so these
can just be turned into non-owning string views.
2019-08-04 12:32:33 -04:00
Lioncash
2830fe820d
UICommon/NetPlayIndex: Take NetPlaySession by const reference for Add()
...
This isn't std::moved wholesale into a member variable or further
std::moved into another function, so it's better to take it by const
reference here to avoid unnecessary reallocations of contained
std::string instances.
2019-08-04 12:29:17 -04:00
Lioncash
0a67a40e7c
UICommon/NetPlayIndex: Move NetPlaySession variable closer to its usage point in List()
...
Moves it closer to where its used, narrowing its visible scope, as well
as preventing unnecessary std::string constructor executions in the
event invalid data is encountered (the continue branch).
2019-08-04 12:24:04 -04:00
Lioncash
13292563ee
UICommon/NetPlayIndex: Use std::move within SetErrorCallback()
...
std::function is allowed to heap allocate in order to store captured
variables, etc, so std::function isn't a trivial type. We can std::move
here in order to avoid potential reallocating.
While we're at it, make the definition's parameter name match the
declaration's parameter name for consistency.
2019-08-04 12:21:02 -04:00
Lioncash
5220922a22
UICommon/NetPlayIndex: Allow move semantics in SetGame()
...
If the parameter is const, then a move won't actually be able to occur,
making the std::move non-functional. We can remove the const qualifier
to remedy this.
2019-08-04 12:16:19 -04:00
Miksel12
9395d7ea08
DolphinQt: Reorder nunchuk mapping
2019-08-04 14:02:43 +02:00
Connor McLaughlin
d3151d8808
Merge pull request #8278 from Miksel12/qt-changes
...
DolphinQt: Limit numeric widget width
2019-08-04 20:28:17 +10:00
Connor McLaughlin
7de6b57c13
Merge pull request #8284 from stenzek/logic-op-hack
...
RenderState: Approximate logic op with blending if unsupported
2019-08-04 14:39:38 +10:00
Connor McLaughlin
c829351c90
Merge pull request #8286 from stenzek/efb-savestate-fixes
...
FramebufferManager: Fix restoring of EFB depth buffer / upside-down in OpenGL
2019-08-04 14:07:18 +10:00
Stenzek
f6f9dc0cac
RenderState: Approximate logic op with blending if unsupported
...
This is a giant hack which was previously removed because it causes
broken rendering. However, it seems that some devices still do not
support logical operations (looking at you, Adreno/Mali). Therefore, for
a handful of cases where the hack actually makes things slightly better,
we can use it.
... but not without spamming the log with warnings. With my warning
message PR, we can inform the users before emulation starts anyway.
2019-08-04 14:06:08 +10:00
Connor McLaughlin
4ccb4ef74f
Merge pull request #8283 from stenzek/d3d11-null-render-target
...
D3D11: Only use integer RTV when logic op is supported+enabled
2019-08-04 13:14:35 +10:00
JosJuice
64c0ff576c
Merge pull request #8285 from lioncash/dinput-ffe
...
InputCommon/DInputJoystick: Correct force-feedback flag testing
2019-08-03 10:09:31 +02:00
JosJuice
2770707587
Merge pull request #8287 from lioncash/static-ctor
...
DiscIO/Volume: Make Partition's interface constexpr
2019-08-03 10:07:53 +02:00
Lioncash
db3b31c246
DiscIO/Volume: Make Partition's interface constexpr
...
PARTITION_NONE technically has a runtime static constructor otherwise.
This allows compile-time instances of Partition to be created without
the use of a static constructor.
2019-08-02 18:25:09 -04:00
Mike Kuijl
cbfc442e90
DolphinQt: Limit numeric widget width
2019-08-02 18:20:37 +02:00
Stenzek
d6460e0b18
FramebufferShaderGen: Fix upside-down EFB being restored in OpenGL
2019-08-03 01:48:57 +10:00
Stenzek
25b3e5e029
FramebufferManager: Fix restoring of EFB depth buffer
...
Correct state wasn't being set.
2019-08-03 01:46:54 +10:00
Connor McLaughlin
7afba6776f
Merge pull request #8279 from spycrab/fix_save_state_wait
...
Fix saving states freezing up emulation
2019-08-03 01:26:07 +10:00
Lioncash
37d643c7d3
InputCommon/DInputJoystick: Correct force-feedback flag testing
...
Introduced in a995e2f5ba
We need to be performing a bitwise AND on the flags and not a logical
AND, otherwise we could end up counting device objects that don't
support forced feedback.
2019-08-02 10:26:44 -04:00
Stenzek
d78a9356d2
D3D11: Only use integer RTV when logic op is supported+enabled
2019-08-02 18:47:19 +10:00
JMC47
b01cacb27e
Merge pull request #8236 from booto/si_greatest_hits_vol_1
...
SI: Minor bugfixes
2019-08-02 03:17:54 -04:00
Silent
3fe8ef4c1c
Make alert messages application modal and not window modal,
...
so assertions cannot be interrupted by terminating the application
2019-08-01 22:27:36 +02:00
Silent
48a4b62125
Change Layer code not to create superfluous std::optional entries in LayerMap
2019-08-01 22:22:05 +02:00
spycrab
04764f8b7f
Fix saving states freezing up emulation
...
Only for about half a second but noticeable nonetheless
2019-08-01 21:33:12 +02:00
Lioncash
ff8f627499
DolphinQt/Config/GeckoCodeWidget: Use forward declarations where applicable
...
Avoids propagating headers into scopes where they're not needed.
2019-07-31 09:54:54 -04:00
Lioncash
14263ec6dd
DolphinQt/Config/GeckoCodeWidget: Call LoadDefaultGameIni() directly
...
This is a static class function, so we don't need to go through the
SConfig instance in order to call it.
2019-07-31 09:54:54 -04:00
Lioncash
6002529ece
DolphinQt/Config/GeckoCodeWidget: Make exec() outcomes explicit
...
Makes it a little more explicit which dialog outcomes we're expecting.
While we're at it, we can invert them into guard clauses to unindent
code a little bit.
2019-07-31 09:54:54 -04:00
Lioncash
255d2ff2d2
DolphinQt/Config/GeckoCodeWidget: Deduplicate ini path
...
We can store this to a local variable to avoid duplicating the same
string creation twice.
2019-07-31 09:54:53 -04:00
Lioncash
a07d19a2fd
DolphinQt/Config/ARCodeWidget: Use forward declarations where applicable
...
Avoids propagating headers into scopes where they're not necessary.
Also uncovered reliance on an indirect inclusion within
CheatsManager.cpp, which is now fixed.
2019-07-31 09:48:45 -04:00
Lioncash
e08a76f9e2
DolphinQt/Config/ARCodeWidget: Call LoadDefaultGameIni() directly
...
This is a static function, so we don't need to go through the instance
of SConfig in order to call it.
2019-07-31 09:08:31 -04:00
Lioncash
4d8d2acae7
DolphinQt/Config/ARCodeWidget: Avoid unnecessary disk operations
...
If a user indicates that they want to clone and edit an AR code, then
click cancel on the following dialog, we shouldn't actually clone the
code.
We also shouldn't resave the codes if the edit dialog is opened and then
closed again via cancel, as there's nothing that actually changed. This
way we don't perform disk accesses unless they're actually necessary.
2019-07-31 09:01:38 -04:00
Lioncash
0d406f2bdc
DolphinQt/Config/ARCodeWidget: Deduplicate ini path
...
We can just store this to a const local and use it to avoid doing the
same work twice.
2019-07-31 08:36:00 -04:00
Stenzek
06daf58032
FramebufferManager: Correctly handle read back D24S8 textures
...
Needed for the Adreno/Vulkan workaround, and if we ever switch to a D24
texture for the depth buffer w/ unrestricted depth range.
2019-07-31 15:33:28 +10:00
Stenzek
2698e311aa
Vulkan: Use correct aspect for D24S8 textures
2019-07-31 15:33:05 +10:00
Brandon Rothweiler
fdfa14d9cc
Show a message in netplay chat when a player joins or leaves
2019-07-30 20:14:51 -07:00
Lioncash
6e14dcf70a
DolphinQt/Config/GameConfigEdit: Pass parent pointer to base class
...
Previously, the constructor of GameConfigEdit wasn't doing anything with
the passed in parent pointer. This is dangerous because it can result in
memory being leaked in certain scenarios. It can also affect layout
decisions made by the parent. Instead, pass it through to the base class.
Current usages of the class pass in nullptr as the parent, so this is a
safe change to make with regards to the class hierarchy.
While we're at it, we can std::move the passed in QString into the class
member, allowing calling code to move strings into the constructor,
avoiding copies.
2019-07-30 19:17:25 -04:00
Silent
cb4eecde52
Fix race conditions in Config Layers
...
API has been made stricter, layers are now managed with shared pointers,
so using them temporarily increased their reference counters.
Additionally, any s_layers map has been guarded by a read/write lock,
as concurrent write/reads to it were possible.
2019-07-30 22:10:17 +02:00
Lioncash
fef1b84f0a
DolphinQt: Replace QStringLiteral with alternatives where applicable
...
QStringLiterals generate a buffer so that during runtime there's very
little cost to constructing a QString. However, this also means that
duplicated strings cannot be optimized out into a single entry that gets
referenced everywhere, taking up space in the binary.
Rather than use QStringLiteral(""), we can just use QString{} (the
default constructor) to signify the empty string. This gets rid of an
unnecessary string buffer from being created, saving a tiny bit of
space.
While we're at it, we can just use the character overloads of particular
functions when they're available instead of using a QString overload.
The characters in this case are Latin-1 to begin with, so we can just
specify the characters as QLatin1Char instances to use those overloads.
These will automatically convert to QChar if needed, so this is safe.
2019-07-30 09:06:03 -04:00
Connor McLaughlin
dea2b9c509
Merge pull request #8258 from CookiePLMonster/dx11.1-detection-fixes
...
D3D11 resources refactor and DX11.1 feature detection fixes
2019-07-30 01:24:57 +10:00
Silent
baa9636d48
D3D11: Add extra logging to StateCache::Get
2019-07-29 16:48:24 +02:00
Silent
43bfb183c2
D3D11: Show a warning message about unsupported features when switching to D3D11 backend on Windows 7
2019-07-29 16:47:45 +02:00
Silent
ff00873610
D3D11: Query for output merger logic op support and use logic op code only if supported
...
Previously code assumed that if DX11.1 runtime is supported, logic ops will,
but Windows 7 SP1 with a Platform Update supports DX11.1 runtime without logic ops.
This created pretty jarring visual artifacts, which now should be gone OR replaced
with much less jarring errors.
2019-07-29 16:47:39 +02:00
Silent
a6b8e8b9c3
D3D11: Ownership fixes for objects in DXTexture
2019-07-29 16:43:02 +02:00
Silent
77425ef83b
D3D11: Ownership fixes for objects in D3DState
2019-07-29 16:39:21 +02:00
Silent
88db577c17
D3D11: Correctly poll ALL possible AA levels.
2019-07-29 16:39:06 +02:00
Lioncash
c93fffaed6
DolphinQt/HotkeyScheduler: Correct string within Run()
...
AddMessage() by itself doesn't perform string formatting facilities, so
this message was actually using the EFB scale as a duration value, not a
format argument. This corrects that.
2019-07-28 23:16:23 -04:00
Lioncash
3f947f086f
VideoCommon/OnScreenDisplay: Use deduction guides for std::lock_guard
...
Same behavior without hardcoding the type of the mutex within the lock
guards. This means the type of the mutex would be able to be changed
without needing to also change all occurrences lock guards are used.
2019-07-28 23:08:21 -04:00
Lioncash
a565e41cb8
VideoCommon/OnScreenDisplay: Remove unused headers
...
While we're at it, fix up the imgui include to use the convention we use
for referencing external library headers.
2019-07-28 23:04:52 -04:00
Lioncash
c212310fbe
VideoCommon/OnScreenDisplay: Take Message's std::string parameter by value
...
Allows callers to std::move strings into the functions (or automatically
assume the move constructor/move assignment operator for rvalue
references, potentially avoiding copies altogether.
2019-07-28 23:00:58 -04:00
Lioncash
50b240fcbd
VideoCommon/OnScreenDisplay: Default initialize all Message members
...
Provides a deterministic initial state in the case of the default
constructor.
2019-07-28 22:42:45 -04:00
Connor McLaughlin
b0113b6c64
Merge pull request #8266 from lioncash/shadowing
...
D3DCommon/Shader: Use std::optional where applicable
2019-07-28 14:24:32 +10:00
Connor McLaughlin
5bad233b1a
Merge pull request #8265 from lioncash/view
...
OGL/ProgramShaderCache: Use std::string_view where applicable
2019-07-28 14:21:59 +10:00
Lioncash
6db305a4e8
VideoBackends/Null: Add missing override specifiers
...
Applies a missing override specifier to VertexManager's destructor.
2019-07-27 17:33:18 -04:00
Lioncash
23c5b362a5
VideoBackends/Null: Apply final to classes where applicable
...
These aren't intended to be further specialized, so we can make this
obvious with final.
2019-07-27 17:33:18 -04:00
Lioncash
86000fc6b4
VideoBackends/Null: Remove unnecessary constructors and destructors
...
Removes constructors and destructors that don't actually provide any
behavior (i.e. doesn't constain generated code related to non-trivial
members in a cpp file, etc).
Lessens the amount of code present.
2019-07-27 17:33:18 -04:00
Lioncash
bdcc5853d5
VideoBackends/Null: Remove unnecessary includes
2019-07-27 17:33:16 -04:00
Lioncash
aca02f9734
D3DCommon/Shader: Use std::optional with CompileShader()
...
Allows removing the use of an out parameter, making it nicer to use.
2019-07-26 20:06:14 -04:00
Lioncash
0ce6264f90
D3DCommon/Shader: Create vector via iterators in CreateByteCode()
...
Same behavior, but without unnecessary zeroing of data contents.
Instead, we supply the dataset to use directly.
2019-07-26 19:45:33 -04:00
Lioncash
287b446ef7
D3D/DXShader: Remove duplicate GetByteCode function
...
This is already provided in the base class, which performs the same
exact behavior. Given the function in the base class isn't virtual, this
also essentially resolves an instance of shadowing.
2019-07-26 19:45:23 -04:00
Lioncash
67bd2de73e
OGL/ProgramShaderCache: Convert typedef over to a using alias
...
Same thing, but nicer to read from left to right.
2019-07-26 18:43:44 -04:00
Lioncash
d6617d399f
OGL/ProgramShaderCache: Use std::lock_guard deduction guides where applicable
...
Same thing, less reading.
2019-07-26 18:22:55 -04:00
Lioncash
6e69e3cf26
OGL/ProgramShaderCache: Remove unused headers
...
Removes a few inclusions that aren't necessary, reducing the number of
header dependencies.
2019-07-26 18:09:44 -04:00
Lioncash
fb384dec55
OGL/ProgramShaderCache: Use std::string_view where applicable
2019-07-26 18:02:00 -04:00
Silent
890f781cd0
Factorize software renderer backend switching warning to be fetched from a new GetWarningMessage in video backend - will be needed for DX11.1 feature set warnings
2019-07-26 19:39:07 +02:00
Silent
799c52463e
Fixes for WRL usage - QueryInterface is explicitly mentioned as not to be used with WRL ComPtr
2019-07-26 19:38:58 +02:00
Connor McLaughlin
d48dabc1fd
Merge pull request #8259 from stenzek/macos-disable-reversed-depth
...
Vulkan: Disable reversed viewport depth on macOS/MoltenVK
2019-07-25 14:11:09 +10:00
Connor McLaughlin
a8bbbd0bfc
Merge pull request #8262 from Tilka/gdbstub
...
Fix GDB stub build
2019-07-25 13:54:02 +10:00
Connor McLaughlin
ac9912bad3
Merge pull request #6321 from stenzek/efb-savestates
...
Support saving EFB and texture cache in save states
2019-07-25 13:50:57 +10:00
Silent
3529dfd691
Connect numerous QPushButtons to use clicked signal instead of pressed. This unifies UI behaviour more.
2019-07-24 00:18:58 +02:00
Stenzek
53e30c06e8
Config: Add an option to skip saving texture cache to save state
2019-07-24 05:19:22 +10:00
Stenzek
63358adfb1
Core: Save movie state before video backend state
...
Fixes the old frame number/inputs being displayed after loading state.
2019-07-24 05:19:22 +10:00
Stenzek
560074cf9f
Core: Fix crash when state is loaded while waiting for the CPU
2019-07-24 05:19:22 +10:00
Stenzek
137009affe
FramebufferManager: Support saving EFB to save state
2019-07-24 05:19:22 +10:00
Stenzek
1082468133
TextureCache: Support saving cache entries, including EFB copies
2019-07-24 04:10:38 +10:00
Stenzek
b26bb0605b
VideoBackendBase: Do save state logic on the GPU thread
2019-07-24 04:08:25 +10:00
Stenzek
a25a4e0708
State: Use RunOnCPUThread to invoke save state handlers
...
This ensures that the emulated state is only touched by the CPU thread
2019-07-24 04:08:25 +10:00
Stenzek
df45e714a3
Core: Support asynchronously executing functions on the CPU thread
...
The CPU thread will be interrupted to execute the callback, and then
restored to its old state after execution completes.
2019-07-24 04:08:19 +10:00
JosJuice
117a60ceb2
StringUtil: Comply with variable naming style
2019-07-23 14:49:13 +02:00
JosJuice
a2a1e04fc9
StringUtil: Use std::string_view more
2019-07-23 14:49:12 +02:00
Lioncash
1f98188277
Core/Core: Use fmt where applicable
...
Continues the migration over to using fmt. Given fmt is also compatible
with std::string and std::string_view, we can convert some parameters
over to std::string_view, such as the message parameter for
StopMessage() and the name parameter for an overload of SaveScreenShot()
2019-07-23 08:42:29 -04:00
Léo Lam
29ba53f6c3
Merge pull request #8256 from JosJuice/setrunninggamemetadata-channel-disc
...
Never set disc as active title when launching channel with same ID
2019-07-23 09:47:55 +08:00
Léo Lam
c8c1a0d747
Merge pull request #8253 from JosJuice/fakesigned-common-key-fix
...
Re-implement FixCommonKeyIndex for WAD files
2019-07-23 09:41:46 +08:00
Connor McLaughlin
8f6b237e11
Merge pull request #8217 from CookiePLMonster/windows-updater-improvements
...
Updates to auto-updater on Windows
2019-07-23 10:39:04 +10:00
Anthony
66e7a11139
Merge pull request #8235 from lioncash/move
...
Common/DebugInterface: Minor cleanup changes
2019-07-22 15:07:14 -07:00
Anthony
136264d340
Merge pull request #8245 from JosJuice/volumeverifier-wii-menu-region
...
Fix VolumeVerifier considering Wii Menu WADs to have wrong region
2019-07-22 15:06:07 -07:00
JosJuice
8bb333d811
ConfigManager: Include "Common/Common.h" for _trans macro
...
Aims to fix https://github.com/dolphin-emu/dolphin/pull/8232#issuecomment-513913625
2019-07-22 22:23:46 +02:00
Silent
baab660f1c
WinUpdater: Removed MAX_PATH limitation on path to updater, also fixed a wrong size parameter
2019-07-22 19:46:25 +02:00
Silent
94a19ca670
Qt/Updater: Fixed an assert on m_parent->close() (was called from a wrong thread)
2019-07-22 19:30:02 +02:00
Silent
4b03790eda
Core: Fixup AutoUpdateChecker::TriggerUpdate on Windows:
...
- Properly close handles if Updater.exe process spawns successfully
- Fix STARTUPINFO sizeof typo
2019-07-22 19:29:50 +02:00
Silent
a00dfeecf0
WinUpdater: Properly account for failure in WaitForPID
2019-07-22 19:29:22 +02:00
Silent
d355abaf0c
WinUpdater: Improved exit synchronization on Windows - now joins a thread instead of using flags to signal
2019-07-22 19:28:20 +02:00
Silent
3f1ba830e7
UpdaterCommon: Remove manual UI::Stop() calls in favour of a scope guard to ensure it's called on all return paths
2019-07-22 19:16:22 +02:00
Silent
2ae409ba06
WinUpdater: Replaced PeekMessage with GetMessage - removes a busy loop in favour of a proper wait based message queue
2019-07-22 19:16:14 +02:00
Léo Lam
15679a9a70
Merge pull request #8227 from lioncash/gekko
...
Common/GekkoDisassembler: Don't print out '\0' as a character
2019-07-22 21:39:49 +08:00
Léo Lam
60aea524b1
Merge pull request #8232 from JosJuice/wasapi-translatable
...
Mark "WASAPI (Exclusive Mode)" as translatable
2019-07-22 21:38:39 +08:00
Léo Lam
71b2e1a997
Merge pull request #8225 from JosJuice/sd-hotkey
...
Add a hotkey for inserting/ejecting the SD card
2019-07-22 21:38:00 +08:00
JosJuice
73a9b4148b
Merge pull request #8257 from CookiePLMonster/assert-fixes
...
Fixes to assertions
2019-07-22 08:47:13 +02:00
JosJuice
a8807e7452
Force signature verification during system update from disc
...
Unlike the WADs people put in their game lists, these WADs
should always be correctly signed.
2019-07-21 18:48:44 +02:00
JosJuice
732d157011
Remove the EnableSignatureChecks setting
...
Since Dolphin can do NUS downloads over plain HTTP, we really don't
want people to be able to silently disable signature verification
indefinitely. Removing the setting shouldn't have any significant
negative impact now that signature verification always is disabled
when installing WAD files.
2019-07-21 18:47:35 +02:00
JosJuice
4304f5f7fc
Remove "not signed by Nintendo" warning when installing WADs
...
Apparently nobody is using good dumps, meaning that the warning
is a nuisance rather than useful information for most people.
Especially so for people who don't install WADs permanently.
It is still possible to verify the signature using the Verify
tab of the game properties, which matches how Dolphin handles
checking the signatures of Wii discs.
2019-07-21 18:47:34 +02:00
Silent
518d96ad48
Remove duplicated "Ignore and countinue?"
2019-07-21 15:36:24 +02:00
JosJuice
f3b9d93737
TitleDatabase: Don't crash on unknown language
...
This only happens if the GC or Wii language is set to an
invalid value, but it's best to guard against it anyway.
2019-07-21 10:15:38 +02:00
JosJuice
4b73d18eaa
Re-implement FixCommonKeyIndex for WAD files
...
The old implementation of this was not able to distinguish between
a title that had the common key index set to 1 because it actually
was Korean and a title that had the common key index set to 1 due to
fakesigning. This new implementation solves the problem by
decrypting a content with each possible common key and checking
which result matches the provided SHA-1 hash.
The problem that the old implementation causes has only been reported
to affect a certain pirated WAD of Chronos Twins DX (WC6EUP), but it's
possible that the problem would start affecting more WADs if we add
support for the vWii common key (which uses index 2). Adding support
for the vWii common key would also prevent us from using the simpler
solution of always forcing the index to 0 if the title is not Korean.
2019-07-21 09:58:16 +02:00
JosJuice
2fda104d5a
Never set disc as active title when launching channel with same ID
...
https://bugs.dolphin-emu.org/issues/11804
2019-07-21 09:53:52 +02:00
JosJuice
4ee73dbad3
IOS: Put common key handles in an array
2019-07-21 09:37:06 +02:00
Léo Lam
da1fbbc5d5
Merge pull request #8243 from JosJuice/merge-wad-classes
...
DiscIO: Merge WiiWAD into VolumeWAD
2019-07-21 15:32:52 +08:00
Léo Lam
cd7a374ab9
Merge pull request #8246 from lioncash/fifo
...
Core/FifoAnalyzer: Tidy up interface
2019-07-21 15:17:43 +08:00
Léo Lam
1ed7cc260b
Merge pull request #8248 from lioncash/settings
...
Common/SettingsHandler: Use std::string_view where applicable
2019-07-21 15:13:27 +08:00
Stenzek
8b44a48383
Vulkan: Disable reversed viewport depth on macOS/MoltenVK
...
Apparently this is broken despite being allowed by the spec.
2019-07-21 13:27:35 +10:00
Silent
7045c68327
When clicking "Ignore for this session", make message box handler return true, so asserts can actually be skipped with this option
2019-07-20 21:04:27 +02:00
Silent
e792a67dc6
Improve thread safety and remove an unnecessary string allocation from MsgAlert
...
s_msg_handler still seems thread unsafe, not sure if it should be or not
2019-07-20 21:03:45 +02:00
Connor McLaughlin
fc8859a414
Merge pull request #8249 from lioncash/rect
...
VideoCommon: Remove unused MathUtil.h include from VideoCommon.h
2019-07-19 16:32:30 +10:00
Stenzek
97d81ac97c
FramebufferShaderGen: Fix format reinterpret shaders on GLES
2019-07-19 15:33:32 +10:00
Stenzek
6f53a4d0da
TextureCache: Don't crash when conversion pipelines fail to compile
2019-07-19 15:32:50 +10:00
JosJuice
34f32898e6
DiscIO: Merge WiiWAD into VolumeWAD
...
These two classes are very similar, so let's merge them.
2019-07-18 22:29:04 +02:00
JosJuice
0f5a4b37ee
DiscIO: Add functions CreateDisc and CreateWAD
...
...in addition to the existing function CreateVolume
(renamed from CreateVolumeFromFilename).
Lets code easily add constraints such as not letting the user
select a WAD file when using the disc changing functionality.
2019-07-18 22:29:04 +02:00
Stenzek
f269c4c798
EFB2Tex: Set alpha channel of Z24X8 copies to 1
...
Matches EFB2RAM.
2019-07-18 23:51:07 +10:00
Stenzek
68bd4cd79a
Vulkan: Use reversed depth range in viewport
...
Also adds a DriverDetails bug to disable on drivers where this is still
broken.
2019-07-18 23:43:12 +10:00
Connor McLaughlin
a77b571da7
Merge pull request #8250 from JosJuice/bitrate-setting
...
Add dumping bitrate setting to GUI and increase default value
2019-07-18 22:17:13 +10:00
JosJuice
199c565bf5
DolphinQt: Add the dumping bitrate setting to the graphics config
...
Fixes https://bugs.dolphin-emu.org/issues/10250
2019-07-18 12:20:21 +02:00
JosJuice
a6dcaed415
DolphinQt: Move frame dumping settings to new group box
2019-07-17 20:07:40 +02:00
JosJuice
f6a755e1ab
Change the default dumping bitrate from 2.5 Mbps to 25 Mbps
...
2.5 Mbps looks noticeably bad even at native resolution.
2019-07-17 19:55:37 +02:00
Lioncash
2b9389202e
VideoCommon: Remove unused MathUtil.h include from VideoCommon.h
...
This header doesn't actually make use of MathUtil.h within itself, so
this can be removed. Many other source files used VideoCommon.h as an
indirect include to include MathUtil.h, so these includes can also be
adjusted.
While we're at it, we can also migrate valid inclusions of VideoCommon.h
into cpp files where it can feasibly be done to minimize propagating it
via other headers.
2019-07-16 20:54:34 -04:00
Lioncash
13a454d603
Common/SettingsHandler: Use fmt for printing out the serial number
...
Same thing, less code.
2019-07-16 04:23:20 -04:00
Lioncash
af576839d8
Common/SettingsHandler: Use std::string_view where applicable
...
Allows passed in strings to be non-allocating.
2019-07-16 04:15:25 -04:00
Connor McLaughlin
9dd8f82e78
Merge pull request #8247 from lioncash/core-include
...
Core/HW/AddressSpace: Remove unnecessary inclusion of Core.h
2019-07-16 14:32:18 +10:00
Lioncash
2b00eefbef
DolphinQt/Debugger: Replace AddressSpace.h inclusions with a forward declaration
2019-07-15 23:20:26 -04:00
Lioncash
df0d4b6aea
Core/HW/AddressSpace: Remove unnecessary inclusion of Core.h
...
This is only included to satisfy the use of our type aliases. Given
that, we can just include CommonTypes.h, lessening dependencies on core
headers.
2019-07-15 23:13:55 -04:00
Lioncash
ac6d70b82b
Core/FifoAnalyzer: Use std::array where applicable
...
This lets us convert CalculateVertexElementSizes() from a function using
an out pointer into one that simply returns the array data as a return
value.
It also lets us dehardcode some values, as we can just query
std::array's size() member function instead.
2019-07-15 07:37:35 -04:00
Lioncash
73db402010
Core/FifoAnalyzer: Convert DecodeMode enum into an enum class
...
Makes the enumeration elements strongly typed.
2019-07-15 07:37:30 -04:00
JosJuice
1606528093
Merge pull request #8234 from JosJuice/version-in-title
...
Show Dolphin version in render window title
2019-07-15 13:05:08 +02:00
JosJuice
0b11f15158
Fix VolumeVerifier considering Wii Menu WADs to have wrong region
2019-07-15 12:42:13 +02:00
Lioncash
53779aa732
Core/FifoAnalyzer: Make functions internally linked where applicable
...
These functions are only used internally within FifoAnalyzer.cpp, so
they can be hidden from external use.
2019-07-14 20:37:21 -04:00
Stenzek
946571b759
TextureCache: Support reinterpreting formats for VRAM textures
2019-07-14 19:16:27 +10:00
Stenzek
77f406c8a8
TextureCache: Combine ApplyPaletteToEntry and ConvertTexture
2019-07-14 14:07:37 +10:00
Stenzek
dfae87d69a
TextureConversionShader: Swap bytes for RG8/GB8 format
...
Matches the software renderer.
2019-07-14 13:36:43 +10:00
Léo Lam
2f5e6cfff1
Merge pull request #8218 from leoetlino/context
...
Use separate libusb contexts to avoid thread safety issues
2019-07-11 17:28:19 +02:00
Connor McLaughlin
4c649d1a5d
Merge pull request #8238 from lioncash/video-stats
...
VideoCommon/Statistics: Minor cleanup changes
2019-07-11 20:34:48 +10:00
booto
62a2611925
SI: Clarify length fields for manual commands
...
Fix up the calculation of the length fields and check that the returned
response is the expected length. This touches many files because it
converts a parameter name from the SI_Device interface from 'length' to
'request_length'. Prior, this field seemed to be used as request length
sometimes, as response length sometimes, and usually just totally ignored.
2019-07-11 01:29:59 -04:00
Lioncash
9c245655fb
VideoCommon/Statistics: Remove unused DECSTAT macro
...
This isn't used anywhere, so it can be removed. This also potentially
fixes an underlying compilation error waiting to happen, given DECSTAT
could have potentially been used, someone disables statistics (for
whatever reason), then gets a compilation error due to the #else case
not containing an empty definition of DECSTAT.
2019-07-10 23:40:13 -04:00
Lioncash
d4337eebde
VideoCommon/Statistics: Rename stats global to g_stats
...
Makes the global variable follow our convention of prefixing g_ on
global variables to make it obvious in surrounding code that it's not a
local variable.
2019-07-10 23:34:54 -04:00
Lioncash
9802a5e16b
VideoCommon/Statistics: Make all member functions non-static
...
Rather than making Statistics' member functions operate on the global
variable instance of itself, we can make these functions member
functions and operate on a by-instance state, removing the direct
dependency on the global variable itself.
This also makes for less reading, as there's no need to repeat "stats."
for all variable accesses.
2019-07-10 23:24:37 -04:00
Lioncash
a99c7d01e1
VideoCommon/Statistics: Normalize statistic variable names
...
Normalizes all variables related to statistics so that they follow our
coding style.
These are relatively low traffic areas, so this modification isn't too
noisy.
2019-07-10 23:19:10 -04:00
JosJuice
44fe5812b9
Fix FIFO player crashing when USE_MEMORYWATCHER is defined
2019-07-10 20:43:15 +02:00
Lioncash
d2d7bf5c3b
Common/DebugInterface: Remove GetInstructionSize()
...
This is completely unused, so it can be removed.
2019-07-09 14:19:40 -04:00
Lioncash
92c1782726
Common/DebugInterface: Mark a few member functions as const
...
Quite a few member functions act as a means to query information. Given
these don't actually modify object state, they can be made const.
2019-07-09 14:19:40 -04:00
Lioncash
d4d485b692
Common/DebugInterface: Make return value of GetColor() a u32
...
At its only usage point, its return value is stored into a u32, and the
default implementation returns 0xFFFFFFFF (-1), which would be an
unsigned integer. Given all of the bits are used to determine a color,
it makes slightly more sense to treat this as an unsigned value as
opposed to a signed one.
2019-07-09 14:19:38 -04:00
booto
d01220e69d
SI: CMD_ORIGIN/CMD_RECALIBRATE gets 10 byte reply
2019-07-08 23:08:35 -04:00
booto
ac809c36e1
SI: Convert SIPOLL's lines value to half lines
...
SI represents polling sample rate in lines, not half lines. It needs to be
multiplied by 2 for VI, which uses half lines.
2019-07-08 23:07:34 -04:00
Lioncash
a9a9b193bb
Common/DebugInterface: Use forward declarations where applicable
...
We're allowed (by the standard) to forward declare types within
std::vector, so we can replace direct includes with forward declarations
and then include the types where they're directly needed.
While we're at it, we can remove an unused inclusion of <cstring>, given
nothing in the header uses anything from it. This also revealed an
indirect inclusion, which this also resolves.
2019-07-08 18:59:11 -04:00
Lioncash
98101bbbe4
Core: Use fmt where applicable for DebugInterface implementations
...
These are trivial enough that they're basically one-to-one conversions
with minor changes of syntax.
2019-07-08 18:52:59 -04:00
Lioncash
457bff92c1
Common/DebugInterface: Use u32 instead of unsigned int consistently
...
Previously u32 was being used for part of the interface and unsigned int
was being used for other parts. This makes the interface fully consistent by
using only one type.
We opt for u32 here given they communicate the same thing (for platforms
we care about where int is 32-bit), while also being less to read.
2019-07-08 18:52:45 -04:00
Lioncash
b1b9c6aa1e
Common/DebugInterface: Default virtual destructor
...
While we're at it, we can also default the constructor and destructor of
inheriting classes in their respective cpp file to prevent the
construction and destruction of non-trivial types being inlined into
other regions of code.
2019-07-08 17:44:58 -04:00
Lioncash
bc8778203e
Common/Watches: std::move strings where applicable
...
Allows calling code to move the std::string into the Watch instances,
avoiding copies.
2019-07-08 17:41:06 -04:00
JosJuice
f3579e788d
Show Dolphin version in render window title
...
This was in DolphinWX but not DolphinQt. It's useful for telling if
users who post screenshots have an up-to-date version of Dolphin.
The old implementation of this prepended the version in DolphinWX code
rather than Core code, but I thought it'd be simpler to do it in Core.
2019-07-08 15:03:00 +02:00
JosJuice
445759aed1
Mark "WASAPI (Exclusive Mode)" as translatable
...
While "WASAPI" doesn't need to be translated, "Exclusive Mode" does.
2019-07-07 18:22:22 +02:00
JMC47
398aa2a9f9
Merge pull request #8231 from JosJuice/debugger-hidden
...
DolphinQt: Don't update debug widgets when hidden
2019-07-07 07:35:06 -04:00
Tillmann Karras
da87638ea2
Fix GDB stub
2019-07-07 05:17:33 +01:00
JosJuice
92a655c8b9
DolphinQt: Don't update debug widgets when hidden
...
Saves on CPU usage when pausing/unpausing with the debugger disabled.
This is especially important when using frame advance rapidly.
2019-07-06 11:30:17 +02:00
spycrab
64de900da4
Qt/ControllersWindow: Fix radio buttons not getting disabled
...
Only happens if the controller window hasn't been opened before.
2019-07-05 16:50:37 +02:00
Lioncash
ce30efc6cf
Common/GekkoDisassembler: Don't print out '\0' as a character
...
Prevents a few instructions from having mangled names in some cases.
2019-07-03 20:12:50 -04:00
JosJuice
e24789b4fb
Add a hotkey for inserting/ejecting the SD card
2019-07-03 22:44:51 +02:00
Connor McLaughlin
0a7395bfba
Merge pull request #8128 from altimumdelta/FrameDumpUpgradePrep1
...
Code: Rename AVIDump to FrameDump
2019-06-30 21:13:19 +10:00
altimumdelta
1df655e376
VideoCommon: Rename AVIDump to FrameDump
2019-06-30 13:02:39 +02:00
Connor McLaughlin
0d2c3e6efc
Merge pull request #8219 from Pokechu22/float-watch
...
Show values as floats in watch
2019-06-30 11:34:29 +10:00
Pokechu22
ae0843f53d
Show values as floats in watch
2019-06-29 12:04:20 -07:00
Connor McLaughlin
e388f01e11
Merge pull request #8215 from CookiePLMonster/appverifier-sanitize
...
Fixed various errors spotted with Application Verifier
2019-06-30 01:27:25 +10:00
Connor McLaughlin
f151570b2d
Merge pull request #8118 from 8times9/move-windowontop
...
Qt/InterfacePane: Move "Keep Window on Top" to Render Window section
2019-06-30 00:46:12 +10:00
Connor McLaughlin
341ce45ed6
Merge pull request #8176 from VinDuv/handle-open-files
...
QtGui: Handle file open events
2019-06-29 22:22:46 +10:00
Connor McLaughlin
8a122de999
Merge pull request #8192 from Miksel12/qt-changes
...
Reorder graphics config
2019-06-29 22:21:53 +10:00
Léo Lam
a88deda307
Merge pull request #8193 from lioncash/disasm
...
Common/GekkoDisassembler: Minor changes
2019-06-29 10:38:36 +02:00
Léo Lam
0c626e6ebc
Merge pull request #8202 from lioncash/build
...
DolphinQt/CMakeLists: Leverage windeployqt for determining libraries and plugins to copy
2019-06-29 10:29:58 +02:00
Léo Lam
0dfff81a56
Merge pull request #8205 from Techjar/crop-fix
...
VideoCommon/RenderBase: Fix crop
2019-06-29 10:24:37 +02:00
Léo Lam
a9099fc96b
Merge pull request #8207 from lioncash/macro
...
VideoCommon/Statistics: Use std::array for projection values
2019-06-29 09:36:33 +02:00
Léo Lam
274b52acb2
Merge pull request #8216 from CookiePLMonster/cpu-override-tick-fix
...
Fix CPU Clock Override checkbox not updating with GameINI
2019-06-29 08:48:01 +02:00
Léo Lam
75b2b53be2
Merge pull request #8200 from randomstuff/detach_driver
...
Automatically detach/reattach bluetooth driver in passthrough
2019-06-29 08:46:59 +02:00
Shiz
e647503eb2
Core/HW/WiimoteReal: add missing Linux include
...
IOLinux.cpp should include <sys/select.h> as it uses select() functionality.
On certain platforms it's included implicitly by other headers, which is why
it compiled before. This makes it also work on musl platforms.
2019-06-29 02:17:58 +02:00
Léo Lam
58c78a495d
Merge pull request #8213 from JosJuice/filesystem-u8string
...
Work around C++20 std::filesystem changes related to u8string
2019-06-28 19:42:34 +02:00
Léo Lam
6fd435fdff
Merge pull request #8208 from lioncash/fmt
...
Core/IOS: Use fmt where applicable
2019-06-28 18:53:47 +02:00
Mike Kuijl
e50a6f4c46
Reorder graphics config
2019-06-26 21:59:47 +02:00
Léo Lam
e85fa26768
BTReal: Use FromThread::ANY for USB transfer replies
...
libusb transfer callbacks might be called immediately during transfer
submission in some cases. (libusb doesn't even specify what thread
the callback is invoked on.) In other words, it is possible to reach
the transfer callback from the CPU thread, and not just from the
USB event handling thread.
So CoreTiming::FromThread::NON_CPU is incorrect and should instead
be ANY.
2019-06-26 17:55:51 +02:00
Léo Lam
cf60a9a7f7
Use separate libusb contexts to avoid thread safety issues
...
Unfortunately, it appears that using libusb's synchronous transfer API
from several threads causes nasty race conditions in event handling and
can lead to deadlocks, despite the fact that libusb's synchronous API
is documented to be perfectly fine to use from several threads (only
the manual polling functionality is supposed to require special
precautions).
Since usbdk was the only real reason for using a single libusb context
and since usbdk (currently) has so many issues with Dolphin, I think
dropping support for it in order to fix other backends is acceptable.
2019-06-26 17:55:51 +02:00
Silent
09aadf0e9c
Fix CPU Clock Override checkbox not updating with GameINI - also bold it if it's overriden
2019-06-23 22:39:26 +02:00
Silent
9eab3feddf
Fix out of bounds read in HttpRequest::Impl::Fetch logging
2019-06-23 21:44:51 +02:00
Silent
6c21811090
Make DolphinAnalytics a true singleton - static local variables are initialized in a thread safe manner since C++11
...
Also works around a Visual Studio 2017 bug where static inline class fields are destructed multiple times
2019-06-23 21:43:47 +02:00
spycrab
dacba85a08
UpdaterCommon: Hide Updater before Dolphin quits
2019-06-23 19:47:18 +02:00
spycrab
396546f5c0
Config/ARCodeWidget: Add option for alphabetical sorting
2019-06-22 19:54:13 +02:00
spycrab
1d43d9afc1
Config/GeckoCodeWidget: Add option for alphabetical sorting
2019-06-22 19:54:13 +02:00
spycrab
93393a288c
Qt/ARCodeWidget: Support drag and drop reordering
2019-06-22 19:54:13 +02:00
spycrab
389351c6c0
Qt/GeckoCodeWidget: Support drag and drop reordering
2019-06-22 19:54:13 +02:00
JosJuice
c0a6fa5dcc
Work around C++20 std::filesystem changes related to u8string
2019-06-21 18:34:21 +02:00
spycrab
d68f62c0f5
Core/NetPlayServer: Fix empty error messages when adding session to the index fails
2019-06-20 20:55:38 +02:00
Anthony
84b9b37fef
Merge pull request #8210 from spycrab/httpreq_error_msg
...
Common/HttpRequest: Use CURLOPT_ERRORBUFFER for error messages
2019-06-20 10:59:25 -07:00
spycrab
ba4c1c5947
Common/HttpRequest: Use CURLOPT_ERRORBUFFER for error messages
2019-06-20 19:44:51 +02:00
JosJuice
63bb646721
Fix opening controller config when there is no profile directory
...
https://bugs.dolphin-emu.org/issues/11771
2019-06-20 18:35:14 +02:00
Lioncash
980085e106
Core/IOS: Use fmt where applicable
2019-06-20 11:50:02 -04:00
Lioncash
c1c5276729
VideoCommon/VertexShaderManager: Use std::array where applicable
...
We can use this to shorten up the initialization code a little bit.
Despite being saved to savestates, this is a non-breaking change.
2019-06-20 08:13:04 -04:00
Lioncash
2e74a4447a
VideoCommon/Statistics: Remove unused setter macros for statistics
...
Now that the floating point members are assigned in bulk, we can remove
their setter macro. While we're at it, we can also remove the setter for
unsigned int, given it's not used.
2019-06-20 08:06:23 -04:00
Lioncash
04c06ec661
VideoCommon/Statistics: Use std::array for projection values
...
Makes the members within the interface much nicer to look at, and also
makes copying them over much nicer too.
2019-06-20 08:06:20 -04:00
Léo Lam
3cafd0ae81
Merge pull request #8171 from Pokechu22/backend-changing-fix
...
Disallow changing the backend when running when software renderer is currently selected
2019-06-20 13:58:01 +02:00
Léo Lam
4edf174b61
Merge pull request #8180 from lioncash/fmt
...
Core/Movie: Use fmt where applicable
2019-06-20 13:56:15 +02:00
Léo Lam
973bba7c1e
Merge pull request #8191 from lioncash/ini
...
Common/IniFile: Use std::string_view where applicable
2019-06-20 13:44:20 +02:00
Léo Lam
4885130799
Merge pull request #8194 from lioncash/common-msg
...
Common/MsgHandler: Tidy up interface and namespace code
2019-06-20 13:37:24 +02:00
Léo Lam
baf02194c1
Merge pull request #8195 from lioncash/macro
...
VideoCommon/Statistics: Remove preprocessor macro
2019-06-20 13:29:27 +02:00
JosJuice
9c33f658a5
Simplify std::filesystem usage a little in Boot.cpp
...
If path_b is absolute, (path_a / path_b) will be the same as path_b.
2019-06-20 10:42:56 +02:00
JosJuice
fab15edb53
Replace <experimental/filesystem> includes with <filesystem>
...
https://bugs.dolphin-emu.org/issues/11770
2019-06-20 10:39:56 +02:00
Lioncash
4f1f55093f
Common/MsgHandler: Namespace code within the Common namespace
...
Closes another gap in the Common library where code isn't being
namespaced under it.
2019-06-19 16:03:55 -04:00
Lioncash
e7dd46a531
Common/MsgHandler: Brace if statement in MsgAlert
...
The condition travels more than one line, so the body should be braced.
While we're at it, make the comparison against nullptr explicit.
2019-06-19 16:03:33 -04:00
Lioncash
0eddf6dd8f
Common/MsgHandler: Use std::string's empty for emptiness checking in MsgAlert
...
Provides more straightforward code compared to negating a length check.
2019-06-19 16:00:16 -04:00
Techjar
08421db52f
VideoCommon/RenderBase: Fix crop
...
This fixes some mistakes from #8049 that caused crop to behave like
stretch and have a funny offset.
2019-06-18 18:34:13 -04:00
Léo Lam
ff96dc0e6f
Merge pull request #8199 from lioncash/namespace
...
General: Use nested namespace specifiers where applicable
2019-06-18 11:33:08 +02:00
Lioncash
4754ce8805
DolphinQt/CMakeLists: Leverage windeployqt for determining libraries and plugins to copy
...
We were doing quite a bit of unnecessary work within CMake to handle and
make sure the necessary libraries were copied over. That approach has
several downsides:
1. It's not possible to handle multi-configuration generators (like
Visual Studio) in an easy manner. The existing script would fail to
copy over the necessary libraries if one configuration was built, and
then another one was built.
2. If you have Qt already installed (properly) by the official binary,
the existing script would copy *all* dlls even if they weren't
necessary. This is pretty bad, since it can waste quite a bit of
space.
Instead, we can just delegate off to the official deployment application
bundled with Qt's libraries that determines what the necessary libraries
are and copies them over as necessary. This also means we can properly
support both release and debug binaries in the same directory, like how
the old handcrafted Visual Studio project files allowed.
2019-06-18 01:12:44 -04:00
Lioncash
e8fd834d8f
DolphinQt/CMakeLists: Collapse name setting code for Windows
...
Its sufficient to simply specify a debug postfix instead of using an
separate variable. What's nice about this approach is that it will
actually work :p
Previously the code wouldn't work for multi-configuration generators
like Visual Studio.
2019-06-18 01:12:41 -04:00
Gabriel Corona
70bca53ed6
Automatically detach/reattach bluetooth driver in passthrough
...
When the bluetooth adapter device is opened/closed by dolphin, the
kernel driver is automatically detached/reattached.
This enables transparent sharing of the same bluetooth wiimotes and
bluetooth adapters between the hosts system and the emulated one using
the same.
2019-06-18 00:49:58 +02:00
Lioncash
2714ba2b3d
UICommon: Add missing header guards
2019-06-17 18:39:44 -04:00
Lioncash
10f705f665
Core: Add missing header guards
2019-06-17 18:39:03 -04:00
Lioncash
c4def7c814
Common: Add missing header guards
2019-06-17 18:37:56 -04:00
Lioncash
72b04a353d
VideoBackends/Vulkan: Use nested namespace specifiers where applicable
2019-06-17 16:57:30 -04:00
Lioncash
ec60027f56
InputCommon: Use nested namespace specifiers where applicable
2019-06-17 16:51:41 -04:00
Lioncash
8e030a4a45
Common: Use nested namespace specifiers where applicable
2019-06-17 16:36:48 -04:00
Lioncash
32bacfa4bd
Core: Use nested namespace specifiers where applicable
...
Same thing, less visual noise.
2019-06-17 16:32:30 -04:00
Lioncash
5cafce3cc4
VideoCommon/Statistics: Amend imgui include
...
This is a library header, so it should be using '<' and '>' to delineate
that.
2019-06-17 02:37:02 -04:00
Lioncash
73710c0745
VideoCommon/Statistics: Remove unused header inclusions
...
These aren't used anywhere, so they can be removed.
2019-06-17 02:36:41 -04:00
Lioncash
6416fe336c
VideoCommon/Statistics: Replace memset with assignment in ResetFrame()
...
Same behavior, less code, and it doesn't require the type ThisFrame
itself to actually be a trivially-copyable type.
2019-06-17 02:27:36 -04:00
Lioncash
e981fa2073
VideoCommon/Statistics: Use ImGui::TextUnformatted() where applicable
...
ImGui::Text() assumes that the incoming text is intended to be
formatted, but we don't actually use it to format anything. We can be
explicit by using the relevant function.
This also has a plus of not needing to go through the formatter itself,
but the gains from that are probably minimal.
2019-06-17 02:27:26 -04:00
Lioncash
1c40fd8569
VideoCommon/Statistics: Replace DRAW_STAT macro with variadic lambda
...
We don't need to use the preprocessor here. We can just use a variadic
lambda function instead and forward the arguments to the formatting
function.
2019-06-17 02:26:25 -04:00
Lioncash
1968643297
Common/MsgHandler: Amend file-scope variable names
...
Makes them follow our coding style.
2019-06-16 23:37:03 -04:00
Lioncash
76b675e9f0
Common/MsgHandler: Make default message handler and translator's internally linked
...
Previously these functions were declared without the static specifier,
giving them external linkage, which isn't really ideal.
Instead, we can place these functions up by the relevant file-scope
variables and place them inside an anonymous namespace with said variables,
giving them internal linkage.
2019-06-16 23:37:03 -04:00
Lioncash
d1475f6d59
Common/MsgHandler: Convert type aliases over to using
...
Same thing, nicer to read.
2019-06-16 23:37:03 -04:00
Lioncash
027c17558f
Common/MsgHandler: Use fmt::print on non-Windows OSes
...
Provides the same behavior.
2019-06-16 23:37:00 -04:00
Lioncash
188234b4cd
Common/GekkoDisassembler: Use std::string_view where applicable
...
Avoids the use of the null pointer to represent an empty string.
Instead, we can simply pass an empty string_view instance. Using
std::string_view enforces this invariant at the API level.
2019-06-16 19:51:23 -04:00
Lioncash
d8c3f09c9f
Common/GekkoDisassembler: Amend disassembly of operations expecting a character literal
...
Due to the lack of cast here, this will actually print out the ascii
value, rather than the character itself, due to promoting to integral
values. Instead, we can eliminate the use of character operands and just
print the value itself directly, given it's equivalent behavior with
less code.
2019-06-16 19:33:28 -04:00
Lioncash
0cde8ab9e8
Common/GekkoDisassembler: Make all lookup tables immutable
...
Allows these arrays to be placed within the read-only segment (and
enforces the immutability in the code itself). While we're at it, we can
make use of std::array here.
2019-06-16 19:21:07 -04:00
Lioncash
78d1716251
Common/IniFile: Make use of std::string_view where applicable
...
Now that the std::map less-than comparitor is capable of being used with
heterogenous lookup, we're able to convert many of the querying
functions that took std::string references over to std::string_view.
Now these functions may be used without potentially allocating a
std::string instance unnecessarily.
2019-06-16 18:20:08 -04:00
Lioncash
de7e9557dc
Common/IniFile: Make CaseInsensitiveStringCompare usable with heterogenous lookup
...
Previously, when performing find() operations or indexing operations on
the section map, it would need to operate on a std::string key.
This means cases like:
map.find(some_string_view)
aren't usable, which kind of sucks, especially given for most cases, we
use regular string literals to perform operations in calling code.
However, since C++14, it's possible to use heterogenous lookup to avoid
needing to construct exact key types. In otherwords, we can perform the
above or use string literals without constructing a std::string instance
around them implicitly.
We simply need to specify a member type within our comparison struct
named is_transparent, to allow std::map to perform automatic type
deduction.
We also slightly alter the algorithm to an equivalent compatible with
std::string_view (which need not be null-terminated), as strcasecmp
requires null-terminated strings.
While we're at it, we can also provide a helper function to the struct
for comparing string equality rather than only less than. This allows
removing other usages of strcasecmp in other functions, allowing for the
transition of them to std::string_view.
2019-06-16 18:20:03 -04:00
Léo Lam
b3525ad774
Merge pull request #8186 from lioncash/view
...
{Common/SymbolDB, Core/HLE/HLE}: Make use of std::string_view where applicable
2019-06-16 16:20:02 +02:00
Léo Lam
1550c098d3
Merge pull request #8187 from lioncash/disasm
...
GekkoDisassmbler: Amend erroneous formatting specifiers
2019-06-16 16:19:30 +02:00
Lioncash
9952dfe293
GekkoDisassmbler: Amend erroneous formatting specifiers
...
fmt diverges from printf in that '.' as a precision specifier may only
be used for floating-point values (makes sense, given it's indicating
precision after the decimal point).
2019-06-16 02:05:16 -04:00
Lioncash
a3046fe807
Core/HLE/HLE: Use std::string_view where applicable
...
Now that SymbolDB's querying functions accept std::string_view
instances, we can alter the Patch/UnPatch HLE functions to follow suit.
2019-06-16 01:20:12 -04:00
Lioncash
936aa5dbaa
Common/SymbolDB: Use std::string_view where applicable
...
These strings are only used for comparison against other strings, so a
string view can be used here.
2019-06-16 01:10:02 -04:00
Techjar
7dc234a2d1
Qt/GCMemcardManager: Load configured memory cards by default
2019-06-15 23:36:47 -04:00
Techjar
56c818b3d8
VideoCommon/RenderBase: Reset scissor rectangle after ImGui rendering
...
This fixes the problem where OBS game capture only grabs the region
inside an ImGui window whenever one is open, when using the OpenGL
backend. Shouldn't have any negative effects, as the scissor would've
been something completely arbitrary anyways.
This may affect other capture software that uses the same hooking
method, but I've only tested OBS.
2019-06-15 07:12:17 -04:00
Vincent Duvert
2f63b71bde
QtGui: Handle file open events
...
Handle file open events received by Dolphin. This allows Wii/GC files to be
opened when double-clicked or dropped on the Dolphin application on macOS.
2019-06-15 11:27:29 +02:00
Lioncash
c64fe7df65
Core/Movie: Use fmt where applicable
...
In a few cases we needed to alter... less than ideal parameter types.
While u8 may have been OK with printf-style formatting, which promotes
most smaller types back to int, this won't work with fmt. fmt preserves
the type of the passed in arguments, meaning that u8, being an alias of
uint8_t (itself being an alias of unsigned char on all the platforms we
support), will print out as a character, not a numeric value.
As such, we amend some functions to operate on u32 values for two
reasons:
1. We actually want it to print out as a value
2. Arithmetic on unsigned types smaller than unsigned int will actually promote to an int,
not unsigned int. This is very non-obvious to some and makes for
error-prone code. < sizeof(int) types are great for storage, not so
much for performing unsigned arithmetic, despite the signedness of
the type.
2019-06-14 17:47:02 -04:00
Lioncash
7f93ce374d
Core/CMakeLists: Privately link in fmt
...
While we do have this library as part of the public linkage interface in
the common library target, which will be used in the future for the
logging macros, we should still be explicit that we're using this
library. Therefore, we privately link it in to be explicit about it.
2019-06-14 17:43:39 -04:00
Anthony
c34388f75b
Merge pull request #8157 from JosJuice/rotational-latency
...
HW/DI: Emulate rotational latency
2019-06-14 12:36:36 -07:00
Anthony
224f292224
Merge pull request #8130 from 8times9/more-text-fixes
...
Qt: Minor adjustments to graphics window descriptions
2019-06-14 12:30:27 -07:00
Anthony
dd3b678451
Merge pull request #8178 from leoetlino/less-sleep
...
DiscordHandler: Don't delay shutdown by up to 2s
2019-06-14 12:28:13 -07:00
Lioncash
5b92d5076a
Common: Use fmt where applicable
...
Begins the transition to using fmt for string formatting where
applicable. Given fmt supports formatting std::string instances out of
the box, we can remove now-unnecessary calls to .c_str() and .data().
Note that this change does not touch the actual logging subsystem aside
from converting the final StringFromFormat call in the process over to
fmt::format. Given our logging system is heavily used throughout the
entire codebase, and converting that over will be quite a large change
by itself, this will be tackled near the end of the conversion process.
2019-06-14 15:04:09 -04:00
8times9
f1dde9fee0
Qt: Minor adjustments to graphics window descriptions
2019-06-14 15:58:16 +02:00
Léo Lam
59155b4d5e
Merge pull request #8150 from lioncash/kbd
...
IOS/USB_KBD: Minor cleanup
2019-06-14 15:25:10 +02:00
Léo Lam
3b7a7ae2e7
Merge pull request #8155 from Techjar/dtm-get-origin
...
Core/Movie: Store PAD_GET_ORIGIN bit in ControllerState
2019-06-14 15:13:43 +02:00
Léo Lam
e2d59abaa7
Merge pull request #8173 from lioncash/fmt
...
Externals: Add libfmt to externals
2019-06-14 14:47:22 +02:00
Léo Lam
a6f4cb1647
DiscordHandler: Don't delay shutdown by up to 2s
...
Currently, it is possible for the DiscordHandler thread to be in the
middle of sleeping when Dolphin is closing. This results in a very
noticeable delay of up to 2 seconds that is unacceptable, especially
for people who don't use the Discord integration.
This fixes the issue by making the thread wait on an Event instead
and signalling it when shutting down.
2019-06-13 23:34:25 +02:00
Léo Lam
79ea55c912
Merge pull request #8169 from lioncash/fallthrough
...
Core/GeckoCodeConfig: Use the [[fallthrough]] attribute in LoadCodes()
2019-06-13 13:36:32 +02:00
Lioncash
d52e69bab1
Common/CMakeLists: Link in fmt
...
While not currently used by common, this will become the case when the
logging system eventually transitions to it, among other things.
2019-06-10 15:26:46 -04:00
Matthew Foulds
c62570c527
Added key for relative input
2019-06-10 13:23:16 +01:00
Pokechu22
adfbbe3a02
Disallow changing the backend when running when software renderer is currently selected
...
It already is disabled for other backends, but this didn't happen with the software renderer. Attempting to change it while running causes the change to visually happen (including switching to the normal render settings UI instead of the barren one for the software renderer), but doesn't actually change the backend itself (it'll still use the software renderer at the next launch).
2019-06-08 16:25:27 -07:00
Lioncash
92b445618a
VideoCommon/DriverDetails: Make look-up table immutable
...
Previously, this array potentially wouldn't be placed within the
read-only segment, since it wasn't marked const. We can make the lookup
table const, along with any other nearby variables.
2019-06-08 18:06:36 -04:00
Lioncash
632b953ebf
Core/GeckoCodeConfig: Use the [[fallthrough]] attribute in LoadCodes()
...
Makes it explicit that this fallthrough is intentional.
2019-06-08 17:55:01 -04:00
Léo Lam
d927cd2b03
Merge pull request #8162 from lioncash/label
...
DSP/LabelMap: C++17 transitional changes/cleanup
2019-06-08 18:16:20 +02:00
Connor McLaughlin
951b66e4ac
Merge pull request #8049 from stenzek/crop
...
Renderer: Adjust source rectangle when crop would draw off screen
2019-06-08 20:57:52 +10:00
Connor McLaughlin
b13e00b003
Merge pull request #8165 from lioncash/linkage
...
{Android/ButtonManager, ResourcePack/Manager}: Make file-scope variables/functions internally linked where applicable
2019-06-08 20:56:13 +10:00
Connor McLaughlin
ab66e91766
Merge pull request #8134 from JosJuice/filesystem-string-view
...
DiscIO: Use std::string_view in FileSystem::FindFileInfo
2019-06-08 20:52:34 +10:00
Connor McLaughlin
bed2d66bed
Merge pull request #8117 from weihuoya/threaded_env
...
android: get java env from thread local storage
2019-06-08 20:42:15 +10:00
Connor McLaughlin
5a4e2a6b2f
Merge pull request #7734 from stenzek/mojave-warning
...
Vulkan: Display a warning when using MoltenVK on HS and earlier
2019-06-08 20:41:39 +10:00
Stenzek
3f1586dbce
Vulkan: Display a warning when using MoltenVK on HS and earlier
2019-06-08 20:16:24 +10:00
Stenzek
1028e2c1a6
D3D12: Remove unnecessary includes in DXContext.h
2019-06-08 20:12:15 +10:00
Stenzek
9316e25652
D3DCommon: Fallback to base CreateSwapChain on failure
...
It appears that some older drivers do not support
CreateSwapChainForHwnd, resulting in DXGI_ERROR_INVALID_CALL. For these
cases, fall back to the base CreateSwapChain() from DXGI 1.0.
In theory this should also let us run on Win7 without the platform
update, but in reality we require the newer shader compiler so this
probably won't work regardless. Also any hardware of this vintage is
unlikely to run Dolphin well.
2019-06-08 20:11:49 +10:00
Connor McLaughlin
0177c6c2c7
Merge pull request #8146 from Techjar/netplay-network-opts
...
Qt/NetPlayDialog: Change network mode options to radio buttons
2019-06-08 20:05:35 +10:00
Connor McLaughlin
6b4ca318c9
Merge pull request #8139 from lioncash/const
...
VideoCommon/PixelShaderGen: Make look-up table arrays immutable where applicable
2019-06-08 20:03:02 +10:00
Connor McLaughlin
67a9fc6784
Merge pull request #8163 from lioncash/config
...
Core/ConfigManager: Use forward declarations where applicable
2019-06-08 20:01:15 +10:00
Connor McLaughlin
b7fba95cdf
Merge pull request #8166 from lioncash/mbedtls
...
Externals: Update mbedTLS from 2.1.1 to 2.16.1
2019-06-08 19:58:37 +10:00
JosJuice
7fcc3dd605
DolphinQt: Don't leave Export Recording disabled always
2019-06-08 08:39:12 +02:00
Lioncash
5512876842
General: Migrate from deprecated mbedTLS functions
...
As indicated by mbedTLS' documentation, all of the relevant functions
have been superseded by _ret-suffixed variants in mbedTLS version
2.7.0.
2019-06-07 22:51:58 -04:00
Lioncash
eb15a52fd5
UICommon/ResourcePack/Manager: Make GetPackConfig() internally linked
...
Silences a -Wmissing-declarations warning.
2019-06-07 20:27:27 -04:00
Lioncash
c0c0e412e0
Core/ConfigManager: Use forward declarations where applicable
...
Avoids dragging in IniFile, EXI device and SI device headers in this header which is
quite widely used throughout the codebase.
This also uncovered a few cases where indirect inclusions were being
relied upon, which this also fixes.
2019-06-07 19:54:39 -04:00
Lioncash
6e9329455c
DSP/LabelMap: std::move std::string instances where applicable
...
We can std::move the std::string parameter in Label's constructor,
allowing the constructor to be moved into in calling code.
We can cascade this outwards in the interface as well.
2019-06-07 17:42:10 -04:00
Lioncash
32427af79e
DSP/LabelMap: Make label_t's definition hidden
...
Given this is a private struct and it's used in a container that
supports incomplete types, we can forward-declare it and move it into
the cpp file. While we're at it, we can change the name to Label to
follow our formatting guidelines.
2019-06-07 17:37:48 -04:00
Lioncash
a3ed4ceec5
DSP/LabelMap: Use std::optional with GetLabelValue()
...
Rather than use a bool and out parameter, we can collapse them into one
by using a std::optional.
2019-06-07 17:26:24 -04:00
Lioncash
747128b093
DSP/LabelMap: Collapse DeleteLabel loop into std::find_if
...
Same thing, no explicit loops.
2019-06-07 17:13:10 -04:00
Lioncash
98ec2ab2ac
DSP/LabelMap: Default constructor and destructor
...
We also move the destructor definition into the cpp file, as that will
allow us to make the entire label_t type hidden from external view in a
following change.
2019-06-07 17:07:06 -04:00
Lioncash
0a1249ea40
DSP/LabelMap: Amend class formatting
...
Places the most important stuff, the public interface first.
2019-06-07 17:05:25 -04:00
Lioncash
60d10d2813
Core/DSP/DSPTables: Make FindOpInfoByName/FindExtOpInfoByName use std::string_view
...
These functions only ever compare against another string, so these can
have their parameters turned into std::string_view to make them more
flexible.
2019-06-06 12:22:02 -04:00
Léo Lam
3f4952d57c
Merge pull request #8152 from lioncash/array-size
...
Common/CommonFuncs: Remove now-unneccessary ArraySize function
2019-06-06 13:35:57 +02:00
Léo Lam
824ec84e82
Merge pull request #8154 from lioncash/analytics
...
{Common/Analytics, Core/Analytics}: Minor C++17 transitional changes
2019-06-06 13:25:17 +02:00
booto
37919144c8
SI_DeviceGCAdapter: Stop it being detected as a steering wheel
2019-06-05 23:31:48 -04:00
Sintendo
e9d4869965
Jit64AsmCommon: Micro-optimize GenFrsqrte
...
Save 2 bytes by testing register against itself and branching on the
sign flag.
Before:
0: 48 0f ba e0 3f bt rax,0x3f
After:
0: 48 85 c0 test rax,rax
2019-06-05 23:58:44 +02:00
Sintendo
5b5886160e
DSPJitArithmetic: Precompute addis immediate
...
Compute immediate value at compile time.
2019-06-05 23:36:30 +02:00
Sintendo
3951d238d9
DSPJitArithmetic: Precompute addi immediate
...
Compute immediate value at compile time.
2019-06-05 23:36:14 +02:00
Sintendo
a3744c3c26
DSPJitUtil: Use round_long_acc in get_long_prod_round_prodl
...
Identical, except that this used a temporary register as scratch instead
of RCX. round_long_acc now no longer needs scratch, so we can
deduplicate the logic.
2019-06-05 23:33:02 +02:00
Sintendo
832e320f08
DSPJitUtil: Make round_long_acc branchless
...
Also no longer clobbers RCX.
2019-06-05 23:25:39 +02:00
Sintendo
9b6f2859a4
DSPJitUtil: Micro-optimize increment_addr_reg
...
2 bytes shorter.
Before:
0: 41 0f b7 c2 movzx eax,r10w
4: 41 89 c5 mov r13d,eax
7: 83 c0 01 add eax,0x1
After:
0: 45 0f b7 ea movzx r13d,r10w
4: 41 8d 45 01 lea eax,[r13+0x1]
2019-06-05 23:23:22 +02:00
JosJuice
3ab74f8cb7
HW/DI: Emulate rotational latency
...
This aims to emulate rotational latency as part of the disc drive
timings, which makes loading times have more variance (like on a
real disc drive) but should not affect the average loading times.
2019-06-05 20:47:08 +02:00
Lioncash
e59f72739a
Core/Analytics: Turn analytics URL into a C-string
...
Less reading and also doesn't store an unnecessary pointer value in the
executable, making it smaller by 8 bytes.
2019-06-05 13:24:35 -04:00
Lioncash
ea9f887170
Core/Analytics: Use inline on static member variables
...
Starting with C++17, this allows for the same behavior as the existing
code, but without the need to manually write the out-of-class
definitions as well.
2019-06-05 13:24:35 -04:00
Lioncash
ebf3de4d93
Core/Analytics: Use std::lock_guard deduction guides
...
Starting with C++17, the type of the mutex being locked no longer needs
to be hardcoded into the type declaration.
2019-06-05 13:24:35 -04:00
Lioncash
57454e90a7
Core/Analytics: Make MakeUniqueId() a const member function
...
This function doesn't modify instance state, so we can mark it as const.
2019-06-05 13:24:34 -04:00
Lioncash
a5caa95a4b
Core/Analytics: Use std::string_view where applicable
...
In these cases, the strings are treated as views anyways, so we can use
them here to avoid potential allocations.
2019-06-05 13:24:34 -04:00
Lioncash
2c2b9690bb
Core/Analytics: Simplify static_assert
...
We can just use a std::array here to simplify the size calculation.
2019-06-05 13:24:34 -04:00
Lioncash
7935c27b52
Common/Analytics: Convert std::string overload into std::string_view
...
Allows for both string types to be non-allocating. We can't remove the
const char* overload in this case due to the fact that pointers can
implicitly convert to bool, so if we removed the overload all const
char arrays passed in would begin executing the bool overload instead of
the string_view overload, which is definitely not what we want to occur.
2019-06-05 13:24:31 -04:00
spycrab
78e566aaa5
Merge pull request #8156 from 8times9/resourcepack-header
...
Qt/ResourcePackManager: Remove column header bold text
2019-06-05 14:27:39 +02:00
Techjar
5f3bf405d4
Core/Movie: Store PAD_GET_ORIGIN bit in ControllerState
...
This fixes the desync on playback of start-from-boot input recordings
made while using the GC adapter, as well as other desyncs that could
potentially occur in other circumstances where this bit is used.
I used a previously reserved bit in the ControllerState to store the
new data, so this shouldn't significantly break backwards
compatibility. However, tools that aren't aware of this new bit may set
it to 0, which will break input recordings that contain it.
2019-06-05 02:36:23 -04:00
8times9
ffb8f56a83
Qt/ResourcePackManager: Remove column header bold text
2019-06-04 19:13:39 -05:00
Lioncash
58e2cd5486
Common/Analytics: std::move std::string constructor parameter
...
Allows calling code to move into the constructor, avoiding the creation
of another string copy.
2019-06-03 20:13:00 -04:00
Lioncash
f813c4951a
Common/Analytics: Use deduction guides for std::lock_guard
...
Avoids needing to hardcode the type of mutex. We can also make use of
scoped_lock where two consecutive lock_guard instances are used.
2019-06-03 20:12:55 -04:00
Lioncash
6df65d7a5d
Common/Analytics: Default AnalyticsReportingBackend()'s destructor
...
Stays consistent with AnalyticsReportBuilder.
2019-06-03 18:27:45 -04:00
Tillmann Karras
84e3391535
Mark files as non-executable
2019-06-02 12:31:40 +01:00
Lioncash
a9663669dc
Common/CommonFuncs: Remove now-unneccessary ArraySize function
...
Since C++17, non-member std::size() is present in the standard library
which also operates on regular C arrays. Given that, we can just replace
usages of ArraySize with that where applicable.
In many cases, we can just change the actual C array ArraySize() was
called on into a std::array and just use its .size() member function
instead.
In some other cases, we can collapse the loops they were used in, into a
ranged-for loop, eliminating the need for en explicit bounds query.
2019-06-01 10:07:57 -04:00
Lioncash
c8b950e716
IOS/USB_KBD: Normalize variable names
...
Now, with all of the tidying done, we can cap it off by normalizing
variable names to abide by our code formatting guidelines.
2019-05-31 09:05:31 -04:00
Lioncash
7f5ca64c4d
IOS/USB_KBD: Make the message type enum an enum class
...
Avoids polluting the surrounding scope with enum values. We can also
make use of it in MessageData's constructor to enforce proper type
passing.
2019-05-31 09:00:08 -04:00
Lioncash
d89ea8bf41
IOS/USB_KBD: Make IsKeyPressed() a non-virtual const member function
...
No other class inherits the USB_KBD class, and this function doesn't
actually modify instance state, so it can be made a const member
function.
2019-05-31 08:51:46 -04:00
Lioncash
bcdc5b5f7e
IOS/USB_KBD: Add static assertion to enforce MessageData as trivially copyable
...
MessageData must be a trivially copyable type, given it's copied into
emulated memory via our memory copy function CopyToEmu. Under the
covers, this function utilizes memcpy. One of memcpy's requirements is
that pointers to it point to types that are trivially copyable,
otherwise the behavior is undefined.
Given that, we can enforce this requirement at compile-time.
2019-05-31 08:51:46 -04:00
Lioncash
e0552e0642
IOS/USB_KBD: Rename SMessageData to MessageData
...
We don't need to prefix this with S to signify that it's a struct.
2019-05-31 08:51:43 -04:00
Lioncash
cc54652fb3
IOS/USB_KBD: Migrate TODO comment above if statement
...
Prevents some wonky formatting from occurring.
2019-05-31 08:51:01 -04:00
Lioncash
e8cc1b8d8a
IOS/USB_KBD: Use std::array for member variables where applicable
...
Simplifies initialization code quite a bit, and replaces a pointer
variable for SMessageData with a type properly representing the whole
set of data it needs.
2019-05-31 08:50:58 -04:00
Léo Lam
a4837a5c5d
Merge pull request #8143 from lioncash/loader
...
VertexLoader_*: Minor cleanup
2019-05-31 14:18:16 +02:00
Léo Lam
eed4fcc218
Merge pull request #8135 from lioncash/cmake
...
CMakeLists: Specify header files in target sources
2019-05-31 14:03:12 +02:00
Lioncash
64564e337b
IOS/USB_KBD: Make key code lookup tables immutable and internally linked
...
These aren't modified by the class, nor do they directly need anything
related to the class state, so they can solely live within the cpp file,
hidden from external view, and also be made const, so the compiler can
place it within the read-only segment.
2019-05-31 08:02:29 -04:00
Léo Lam
2cb59ab055
Merge pull request #8148 from lioncash/view
...
AudioCommon: Use std::string_view with feature querying functions
2019-05-31 14:01:15 +02:00
Léo Lam
478f359d8d
Merge pull request #8149 from lioncash/sdio
...
IOS/SDIOSlot0: Remove unimplemented prototype
2019-05-31 13:58:54 +02:00
Lioncash
2060390a9f
IOS/SDIOSlot0: Tidy up parameter names of ExecuteCommand
...
Makes the names consistent between declaration and definition and
adjusts them to follow our code formatting guidelines.
Now all functions in the translation unit follow our formatting
guidelines.
2019-05-31 07:28:11 -04:00
Lioncash
61c25b3d23
IOS/SDIOSlot0: Remove unimplemented prototype
...
This function doesn't have an implementation, so we can remove it to
make for less reading (and a linker error waiting to happen).
2019-05-31 07:23:40 -04:00
Lioncash
78e96230b2
AudioCommon: Move static locals into the AudioCommon namespace
...
Given these are locals, they can be moved out of the global namespace.
While we're at it, turn the constants below it into constexpr variables.
2019-05-31 07:07:16 -04:00
Lioncash
15397e2a89
AudioCommon: Use emplace_back instead of push_back in GetSoundBackends()
...
Constructs the strings directly within the container instead of
performing a construction, then a copy.
The reasoning is that the BACKEND_* strings are const char arrays, so
the push_back code is equivalent to:
push_back(std::string(BACKEND_WHATEVER)) instead of forwarding the
arguments to a constructed instance directly in the container.
2019-05-31 07:03:54 -04:00
Lioncash
1a56e9d9e0
AudioCommon: Use std::string_view with feature querying functions
...
Provides the same behavior, but allows passed in strings to be
non-allocating in calling code.
2019-05-31 07:01:47 -04:00
Lioncash
3d27439d9a
VideoCommon/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
a41ba68c1e
VideoVulkan/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
cd9281772a
VideoSoftware/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
115e7992c5
VideoOGL/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
968d379cc4
VideoNull/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
87a57a5584
UpdaterCommon/CMakeLists: Specify headers in target sources
2019-05-31 06:54:26 -04:00
Lioncash
4cdb493eab
UICommon/CMakeLists: Specify headers in target sources
2019-05-31 06:54:25 -04:00
Lioncash
24f5acf9a5
InputCommon/CMakeLists: Specify headers in target sources
2019-05-31 06:54:25 -04:00
Lioncash
b453229a68
DolphinQt/CMakeLists: Specify headers in target sources
2019-05-31 06:54:25 -04:00
Lioncash
0c538ef523
DolphinNoGUI/CMakeLists: Specify headers in target sources
2019-05-31 06:54:25 -04:00
Lioncash
cbcafd6830
DiscIO/CMakeLists: Specify headers in target sources
2019-05-31 06:54:25 -04:00
Lioncash
cd351fd478
Core/CMakeLists: Specify headers in target sources
2019-05-31 06:54:24 -04:00
Lioncash
b6d9b85293
AudioCommon/CMakeLists: Specify headers in target sources
2019-05-31 06:52:44 -04:00
Lioncash
48b82e82db
Common/CMakeLists: Specify headers alongside source files
...
Allows these files to show up as part of the project when generating IDE
builds from CMake.
2019-05-31 06:52:44 -04:00
Léo Lam
5ffbec6956
Merge pull request #8144 from lioncash/tie
...
Common/x64Emitter: Resolve TODO in OpArg's operator==
2019-05-31 11:05:33 +02:00
booto
bc8a4f99c7
VideoCommon: Constrain the array_base registers
...
The array_base registers as part of CP state do not seem to incorporate
the upper bits in the physical address they try to access.
2019-05-31 03:22:00 -04:00
Techjar
b0b4b69d6e
Qt/NetPlayDialog: Change network mode options to radio buttons
...
This changes the Host Input Authority and Golf Mode checkboxes into a
set of radio buttons, consisting of Fair Input Delay, Host Input
Authority, and Golf Mode. This represents the 3 network modes we have.
Although Golf Mode is just an extension of Host Input Authority, it's
more logical to the user to present it as a separate option, rather
than enabling the Golf Mode checkbox only when Host Input Authority is
enabled. This also eliminates the need to first enable Host Input
Authority before Golf Mode can be enabled.
This also adds tooltips to provide brief descriptions of the options,
as well as reintroducing tooltips that were previously removed.
2019-05-31 02:33:41 -04:00
booto
c1baffa776
ARAM: further cleanup, use AddressSpace accessors
2019-05-30 21:46:18 -04:00
Techjar
199486ffb6
Qt/NetPlayDialog: Move settings loading into LoadSettings
2019-05-30 18:07:03 -04:00
Techjar
cd3ba570df
VideoCommon/ShaderGenCommon: Fix memcmp size in ShaderUid operators
2019-05-30 16:00:46 -04:00
Lioncash
2452747429
VertexLoader_TextCoord: Tidy up public function definitions
...
We can use u32 instead of unsigned int to shorten up these definitions
and make them much nicer to read.
While we're at it, change the size array to house u32 elements
to match the return value of the function.
2019-05-30 10:29:51 -04:00
Lioncash
9569c79ca2
VertexLoader_TextCoord: Make lookup tables immutable
...
Allows the compiler to place the data within the read-only segment.
2019-05-30 10:29:50 -04:00
Lioncash
16a03bade2
VertexLoader_TextCoord: Place helper functions in anonymous namespace
...
Gives them all internal linkage.
2019-05-30 10:29:50 -04:00
Lioncash
6f656b7219
VertexLoader_Position: Tidy up public function definitions
...
We can use u32 instead of unsigned int to shorten up these definitions
and make them much nicer to read.
While we're at it, change the size array to house u32 elements to match
the return value of the function.
2019-05-30 10:29:50 -04:00
Lioncash
14e544eef8
VertexLoader_Position: Make lookup tables immutable
...
Allows the compiler to place these arrays within the read-only segment.
2019-05-30 10:29:50 -04:00
Lioncash
be9a03b35f
VertexLoader_Position: Place helper functions in anonymous namespace
2019-05-30 10:29:50 -04:00
Lioncash
60a1d0593c
VertexLoader_Color: Place helper functions in anonymous namespace
...
While we're at it, convert the define into a constexpr variable.
2019-05-30 10:29:47 -04:00
Lioncash
66596c5176
Common/x64Emitter: Resolve TODO in OpArg's operator==
...
We now require C++17, so we can use std::tie here.
2019-05-30 10:27:28 -04:00
Léo Lam
00ecfb3c59
Merge pull request #8138 from lioncash/input-string
...
ControllerInterface/Device: Minor cleanup
2019-05-30 14:33:53 +02:00
Léo Lam
4e7a790648
Merge pull request #8140 from lioncash/vertex
...
VideoCommon/VertexLoader_Normal: Construct look-up table at compile-time
2019-05-30 14:28:59 +02:00
Léo Lam
90c9991086
Merge pull request #8141 from lioncash/init
...
VideoCommon/ShaderGenCommon: Simplify initialization of ShaderUid class
2019-05-30 14:15:02 +02:00
Léo Lam
2ce587f781
Merge pull request #8142 from lioncash/shader-view
...
VideoCommon/RenderBase: Use std::string_view with CreateShaderFromSource()
2019-05-30 14:12:18 +02:00
Lioncash
f7eff6dab8
VideoCommon/ShaderGenCommon: Simplify operator!= for ShaderUid
...
This can be implemented as the negation of operator==, placing the
comparison logic for equality and inequality in the same place.
2019-05-30 06:41:57 -04:00
Lioncash
954246d10e
VideoCommon/ShaderGenCommon: Remove use of a union within ShaderUid
...
This is only ever used to retrieve a raw view of the given UID data
structure, however it's already valid C++ to retrieve a char/unsigned
char view of an object for bytewise inspection.
u8 maps to unsigned char on all platforms we support, so we can just do
this directly with a reinterpret cast, simplifying the overall
interface.
2019-05-30 06:41:57 -04:00
Lioncash
149a97e396
VideoCommon: Remove unnecessary memset on ShaderUid instances.
...
Zero-initialization zeroes out all members and padding bits, so this is
safe to do. While we're at it, also add static assertions that enforce
the necessary requirements of a UID type explicitly within the ShaderUid
class.
This way, we can remove several memset calls around the shader
generation code that makes sure the underlying UID data is zeroed out.
Now our ShaderUid class enforces this for us, so we don't need to care about
it at the usage sites.
2019-05-30 06:41:54 -04:00
Lioncash
1831dcbe6f
VideoVulkan/ShaderCompiler: Use non-member std::size instead of ArraySize()
...
Now that we're on C++17, we can use its non-member std::size function
instead of ours. This provides no functional change.
2019-05-30 04:16:20 -04:00
Lioncash
d6a60050ff
VideoVulkan/ShaderCompiler: Use a std::optional instead of bool+out variable
...
Now that we utilize C++17, we can simply return an optional containing
the code instead of using an out variable and a boolean result,
essentially combining them into one.
This provides a much more straightforward interface.
2019-05-30 04:16:17 -04:00
Lioncash
e60268bd42
VideoCommon/RenderBase: Use a std::string_view with CreateShaderFromSource()
...
Greatly simplifies the overall interface when it comes to compiling
shaders. Also allows getting rid of a std::string overload of the same
name. Now std::string and const char* both go through the same function.
2019-05-30 03:29:35 -04:00
Lioncash
0084aeb5d7
VideoCommon/VertexLoader_Normal: Use variable template variants of type traits
...
Same thing, less reading.
2019-05-30 00:52:59 -04:00
Lioncash
8268b6f454
VideoCommon/VertexLoader_Normal: Initialize function table at compile-time
...
Makes VertexLoader_Normal completely stateless, eliminating the need for
an Init() function, and by extension, also gets rid of the need for the
FifoAnalyzer to have an Init() function.
2019-05-30 00:52:57 -04:00
Lioncash
911755242d
VideoCommon/VertexLoader_Normal: Remove E prefix from enums
...
This is old formatting that used to be used prior to the coding style
being introduced.
2019-05-29 22:15:46 -04:00
Lioncash
3b8fb22d93
VideoCommon/VertexLoader_Normal: Tidy up function declarations
...
We can use u32 to shorten up the function declarations. While we're at
it, remove unnecessary comments. These don't help with understanding.
2019-05-29 22:13:20 -04:00
Lioncash
8537f8e095
VideoCommon/PixelShaderGen: Fix up wonky comment formatting
...
This is likely a remnant of the initial transition to clang-format.
2019-05-29 22:03:02 -04:00
Lioncash
45934dd0c5
VideoCommon/PixelShaderGen: Make arrays immutable
...
Many of the arrays defined within this file weren't declared as
immutable, which can inhibit the strings being put into the read-only
segment. We can declare them constexpr to make them immutable.
While we're at it, we can use std::array, to allow bounds conditional
bounds checking with standard libraries. The declarations can also be
shortened in the future when all platform toolchain versions we use
support std::array deduction guides. Currently macOS and FreeBSD
builders fail on them.
2019-05-29 22:00:58 -04:00
Lioncash
e28d08e973
VideoCommon/PixelShaderGen: Brace control structures that travel more than one line
...
Them's the code formatting rules.
2019-05-29 20:16:41 -04:00
Lioncash
0263435050
ControllerInterface/Device: Make DetectInput() a const member function
...
This doesn't actually modify object instance state, so it can be made
const.
2019-05-29 19:23:54 -04:00
Lioncash
27346fee8a
ControllerInterface/Device: Take vector by const reference in DetectInput()
...
The vector is only ever queryied and it's contents aren't modified, so
there's no reason to take the vector by value. We can take a constant
reference to it to avoid unnecessary allocating.
2019-05-29 19:12:21 -04:00
Lioncash
246e2a77ce
ControllerInterface/Device: std::move strings in constructor where applicable
...
Allows callers to move std::string values into the constructor,
potentially avoiding copies.
2019-05-29 18:46:49 -04:00
Lioncash
1355b43fd2
ControllerInterface/Device: Use std::string_view where applicable
...
In these cases, the given string is only ever compared against other
string, so std::string can be turned into a std::string_view to allow
non-allocating inputs.
2019-05-29 18:42:24 -04:00
Vincent Duvert
2c3c8bbb90
GCAdapter: Update Android-specific source
...
Fix the Android version of GCAdapter.cpp so it matches the new definitions in GCAdapter.h.
2019-05-29 18:28:24 +02:00
Vincent Duvert
9e7d4d2abb
GCAdapter: Handle dynamic status updates for non-hotplug libusb
...
Detect when the setup function found no adapter, or found one but could
not connect to it, and report the new status in that case.
2019-05-29 18:28:24 +02:00
Vincent Duvert
2ac1ca133f
GCPadWiiUConfigDialog: Update the adapter state dynamically
...
Update the GC adapter config GUI if the adapter is plugged or unplugged.
2019-05-29 18:28:24 +02:00
Vincent Duvert
b08e2ec959
GCAdapter: Report libusb open errors to the user
...
If opening the adapter fails, report the libusb error message in the GUI
instead of “No Adapter Detected”.
The error condition is removed when the adapter is unplugged.
2019-05-29 18:28:24 +02:00
Vincent Duvert
0165e5e703
GCAdapter: Close libusb handle if an open error occurs
...
The handle was previously kept open, which was causing future adapter
plug/unplug events to be ignored.
2019-05-29 18:28:24 +02:00
Léo Lam
80d8173d29
Merge pull request #8132 from lioncash/string
...
Common/FileUtil: Use std::string_view with WriteStringToFile
2019-05-29 15:32:18 +02:00
JosJuice
f25367a7a2
DiscIO: Avoid copies when comparing FileSystemGCWii file names
2019-05-29 14:53:39 +02:00
weihuoya
0dec8feadb
android: thread local env
2019-05-29 20:22:26 +08:00
Léo
aca46b11f8
Merge pull request #8070 from leoetlino/usb-fixes
...
Update and patch libusb to fix USB issues
2019-05-29 14:07:19 +02:00
Léo Lam
918d707f3f
Merge pull request #8131 from lioncash/move
...
UICommon/ResourcePack/Manager: Resolve use-after-move in Add()
2019-05-29 13:24:08 +02:00
Léo Lam
0cfdcf436d
Merge pull request #8136 from lioncash/arglist
...
VideoCommon/{NetPlayChatUI/NetPlayGolfUI}: Minor changes
2019-05-29 13:18:03 +02:00
Lioncash
7346679986
Common/FileUtil: Use std::string::data within ReadFileToString
...
With C++17, .data() for std::string now has a non-const overload, so we
can make use of that instead of taking the address of the first element.
2019-05-29 07:06:56 -04:00
Lioncash
c0f499b7f7
Common/FileUtil: Use std::string_view with WriteStringToFile
...
Allows writing out other forms of strings (e.g. C strings) without the
need to allocate a std::string and discard it after use.
2019-05-29 07:06:56 -04:00
Lioncash
eb475025b8
Common/FileUtil: Make WriteStringToFile consistent with ReadFileToString
...
Makes the parameter ordering consistent and less error-prone.
2019-05-29 07:06:53 -04:00
Lioncash
1a0f8e7804
VideoCommon/VertexLoaderX64: Add missing header guard
2019-05-29 06:35:22 -04:00
Lioncash
778623c48c
VideoCommon/NetPlayGolfUI: Remove unused header
...
This header doesn't actually make use of any std::string facilities.
2019-05-29 06:20:57 -04:00
Lioncash
cf0f2bbf1d
VideoCommon/NetPlayGolfUI: Default the destructor in the cpp file
...
Ensures the destruction logic is kept local to the translation unit. It
also doesn't really do much to have it specified in the header.
2019-05-29 06:20:05 -04:00
Lioncash
0fabab0760
VideoCommon/NetPlayGolfUI: Initialize netplay_client in the constructor initializer list
2019-05-29 06:20:05 -04:00
Lioncash
c958fc1278
VideoCommon/NetPlayChatUI: Default destructor in the cpp file
...
Ensures that the destruction logic is kept local to the translation unit
(making it nicer when it comes to forward declaring non-trivial types).
It also doesn't really do much to define it in the header.
2019-05-29 06:20:05 -04:00
Lioncash
53b115b81e
VideoCommon/NetPlayChatUI: Use nullptr where applicable
...
We gotsa type dedicated to this concept already :P
2019-05-29 06:14:43 -04:00
Lioncash
50a15b7484
VideoCommon/NetPlayChatUI: Take std::string by value in AppendChat()
...
Given we're simply storing the std::string into a deque. We can emplace
it and move it. Completely avoiding copies with the current usage of the
function.
2019-05-29 06:12:29 -04:00
Lioncash
08223bad9f
VideoCommon/NetPlayChatUI: Set member variable within the constructor initializer list
...
Member variables should be initialized within the constructor
initializer list if possible.
2019-05-29 06:09:49 -04:00
JosJuice
d4b069f458
DiscIO: Use std::string_view in FileSystem::FindFileInfo
...
...and in the functions that call it.
2019-05-29 08:29:56 +02:00
Sintendo
c84f34bd50
x64Emitter: Short MOVs for 32bit immediates
...
Prior to this commit, the emitter would emit a 7-byte instruction when
loading a 32-bit immediate to a 64-bit register.
0: 48 c7 c0 ff ff ff 7f mov rax,0x7fffffff
With this change, it will check if it can instead emit a load to a
32-bit register, which takes only 5 or 6 bytes.
0: b8 ff ff ff 7f mov eax,0x7fffffff
2019-05-29 01:04:09 +02:00
Lioncash
4d2e0c7b48
UICommon/ResourcePack/Manager: Resolve use-after-move in Add()
...
The pack is already has its validity checked at the beginning of the
function, so we don't need to check this again after inserting it.
Also resolves a use-after-move case.
2019-05-28 17:40:28 -04:00
Lioncash
b4470ad4c2
UICommon/GameFile: Make COVER_URL a plain C string
...
Same behavior but doesn't take up 8 bytes in the executable to store a
pointer. While we're at it, move it into an anonymous namespace within
the UICommon namespace.
2019-05-28 07:27:41 -04:00
Lioncash
8229ada922
UICommon/GameFile: Remove unused includes
...
Nothing within the source file makes use of anything in those includes,
so they can be removed.
2019-05-28 07:27:41 -04:00
Lioncash
80786cd295
UICommon/GameFile: Remove unnecessary value() calls in DownloadDefaultCover()
...
We already check ahead of time if the optional contains a value within
it before accessing it, so we don't need to use the throwing value()
accessor. We can just directly use operator->
2019-05-28 07:27:41 -04:00
Lioncash
ab0892e5a5
UICommon/GameFile: Deduplicate string paths where applicable
...
Rather than construct strings twice, we can just construct it once and
reuse it. While we're at it, we can move variables closer to where
they're actually used within DownloadDefaultCover()
2019-05-28 07:27:35 -04:00
Lioncash
27ecb93b32
UICommon/GameFile: Remove unnecessary initializers
...
All of the standardized types have constructors that will automatically
initialize them, so the explicit initializers are redundant.
2019-05-28 07:00:15 -04:00
Lioncash
56faf750be
UICommon/GameFile: std::move std::string argument in constructor
...
Allows for calling code to move the argument into the constructor,
avoiding a copy.
2019-05-28 06:57:48 -04:00
Lioncash
8e65869484
UICommon/GameFile: Default no-arg constructor and destructor within the cpp file
...
A GameFile instance contains quite a lot of non-trivial types, so
default construction and destruction in the same translation unit.
2019-05-28 05:53:40 -04:00
Lioncash
49ca31467d
UICommon/GameFile: Use in-class initializers where applicable
...
Allows deduplicating code within the constructor initializer list.
2019-05-28 05:51:51 -04:00
Léo Lam
800d875faa
Merge pull request #8127 from lioncash/resource
...
UICommon/ResourcePack: Minor cleanup
2019-05-27 23:05:10 +02:00
Léo Lam
256c9375c9
Move libusb utilities to LibusbUtils
...
* Simplifies libusb context usage and allows us to set options for
all contexts easily. Notably, this lets us enable usbdk support
in libusb, which is now opt-in in the latest version.
* Moves the libusb config descriptor wrapper class to LibusbUtils too
since that could easily be reused.
* Moves device listing to LibusbUtils too and add a lock around it
as some libusb backends are not thread safe.
* Consequences: only a single context and a single event handling
thread is used now, which is more efficient.
2019-05-27 20:09:55 +02:00
Lioncash
f07cf9ebab
UICommon/ResourcePack: Allow ReadCurrentFileUnlimited() to read into any contiguous container
...
This allows the same code to be used to read into a std::string, which
allows for eliminating the vector->string transfer when reading the
manifest file.
A ContiguousContainer is a concept that includes std::array,
std::string, and std::vector.
2019-05-27 13:29:40 -04:00
Lioncash
5c4d3f55da
UICommon/Manager: Remove unused std::string variable in Remove()
2019-05-27 13:09:21 -04:00
Léo Lam
42de5b9a10
Merge pull request #8126 from lioncash/todo
...
Core/GCMemcard: Remove obsolete TODO
2019-05-27 19:04:06 +02:00
Léo Lam
525c65dd19
Merge pull request #8125 from lioncash/verify
...
DiscIO/VolumeVerifier: Make use of unused variable (+ minor other changes)
2019-05-27 19:03:13 +02:00
Lioncash
41cda6fe6d
UICommon/ResourcePack: Use ScopeGuards to manage closing files
...
Makes it way harder to introduce resource leaks, and plugs the existing
resource leaks in the constructor and Install() where the file wouldn't
be closed in some error cases.
2019-05-27 13:02:04 -04:00
Lioncash
157a305507
UICommon/ResourcePack: Deduplicate string construction
...
A few cases duplicate the string patch creation, which is kind of
wasteful. We can just construct the string once.
2019-05-27 12:45:23 -04:00
Lioncash
a22cc615a9
UICommon/ResourcePack: Remove unnecessary resizes
...
We can simply construct the containers with the desired size in these
cases.
2019-05-27 12:37:46 -04:00
Lioncash
57701cd988
UICommon/ResourcePack: Make TEXTURE_PATH a regular array
...
Same behavior, only it doesn't unnecessarily store a pointer in the
executable. While we're at it, make it constexpr and move it into the
namespace.
2019-05-27 12:33:50 -04:00
Lioncash
b2b5b01eda
Core/GCMemcard: Remove obsolete TODO
...
Now that we assume C++17, the in-file definition of the std::array can
be removed. This is all that's necessary, as constexpr used on a static
member variable implies inline (and so, automatically has C++17's static
inline behavior).
2019-05-27 11:48:38 -04:00
Lioncash
d220e33862
DiscIO/VolumeVerifier: Make no-argument overload of GetBiggestUsedOffset() const
...
The overload taking a partition is already a const member function, so
this one can be turned into one as well.
2019-05-27 10:40:41 -04:00
Lioncash
bf6948c1d4
DiscIO/VolumeVerifier: Use structured bindings where applicable
...
Allows providing better names than "first" or "second".
2019-05-27 10:40:38 -04:00
Lioncash
fa57396e97
DiscIO/VolumeVerifier: In-class initialize members where applicable
...
Removes redundant initializers from the constructor and provides
initializers for all members that don't already have one for consistency
(and deterministic initial state).
2019-05-27 10:40:17 -04:00
Lioncash
52eb2d0d82
DiscIO/VolumeVerifier: Default destructor within the cpp file
...
Given the volume verifier has quite a few non-trivial object within it,
it's best to default the destructor within the cpp file to prevent
inlining complex destruction logic elsewhere, while also making it nicer
if a forward-declared type is ever used in a member variable.
2019-05-27 10:19:51 -04:00
Lioncash
0ccaa2b5d6
DiscIO/VolumeVerifier: Take std::string by value in AddProblem()
...
This allows both std::moving into the function and moving the parameter
from within the function, potentially avoiding an unnecessary copy.
2019-05-27 10:17:11 -04:00
Lioncash
a1f77fd14b
DiscIO/VolumeVerifier: Make use of unused variable in CheckMisc()
...
This variable wasn't being utilized when comments indicate that it
probably should be.
2019-05-27 10:09:55 -04:00
Lioncash
ab2adfb0a7
Common/HttpRequest: Simplify cURL initialization
...
std::call_once is guaranteed to execute the given callable object
exactly once. This guarantee holds even if the function is called
concurrently from several threads.
Given that, we can replace the mutex and boolean flag with
std::call_once and a std::once_flag to perform the same behavior.
2019-05-27 09:46:57 -04:00
Lioncash
b15f595130
Common/HttpRequest: Avoid unnecessary copies in loop in Fetch()
...
Previously, every entry pair within the map would be copied. The reason
for this is subtle.
A std::map's internal entry type is defined as:
std::pair<const Key, Value>
but the loop was declaring it as:
std::pair<Key, Value>
These two types aren't synonymous with one another and so the compiler
is required to always perform a copy.
Using structured bindings avoids this (as would plain auto or correcting
the explicit type), while also allowing the use of more appropriate
names compared to first and second.
2019-05-27 09:36:31 -04:00
Lioncash
8dc8cf8019
Common/HttpRequest: std::move callback in constructor
...
std::function is allowed to heap allocate in order to hold any necessary
bound data in order to execute properly (e.g. lambdas with captures), so
this avoids unnecessary reallocating.
2019-05-27 09:26:28 -04:00
Pokechu22
69d9d9f87a
Also free when initialization fails, and move to end
2019-05-26 19:59:29 -07:00
Pokechu22
19fb3bb4fe
DX11: Fix access violation on closing dolphin
2019-05-26 15:01:05 -07:00
Léo Lam
f92c17e76f
Merge pull request #7799 from Tilka/mapping
...
DolphinQt/Mapping: red = error, don't flash
2019-05-26 18:10:06 +02:00
Tillmann Karras
2195ef30f3
DolphinQt/Mapping: red = error, don't flash
2019-05-26 17:59:30 +02:00
Roland Munsil
4ce7079098
CheatsManager: Improve performance of searching & add input validation
...
The previous implementation of cheat search would reconvert the input
string for every single memory value. Now we do it once and construct
a comparison lambda which we pass to the search code.
In addition, I also added input validation. So, for example, if you've
selected Decimal input and you try to compare against "FF",
it won't search and will instead let the user know they've entered an
invalid value. Similar logic for if you enter "1.2" in a search for
bytes. Before, it would just use 0 if it failed to convert the value.
2019-05-26 17:32:48 +02:00
MerryMage
f6afce781f
Jit64AsmCommon: Use PEXT in GenConvertDoubleToSingle
2019-05-25 23:07:50 +01:00
MerryMage
12314577c1
Jit64AsmCommon: Make ConvertDoubleToSingle use RSCRATCH as output
2019-05-25 23:07:50 +01:00
booto
c4799e5977
Jit64: Make DoubleToSingle a common asm routine
2019-05-25 23:07:50 +01:00
Admiral H. Curtiss
15abb1c92d
GCMemcardDirectory: Improve logic for which files are loaded into the virtual memory card.
...
- Files for the current game are now guaranteed to be loaded, space and validity permitting.
- Avoid showing PanicAlerts for every problem encountered, most of them aren't really important enough and will probably just annoy the user.
- And for the only error the user will definitely care about, when the save of the game they're trying to play fails to load, show an imgui message instead.
2019-05-25 21:51:36 +02:00
Admiral H. Curtiss
5af05f6714
GCMemcard/GCIFile: Implement LoadHeader().
2019-05-25 21:49:09 +02:00
Admiral H. Curtiss
884af05589
GCMemcardDirectory: Move GCIFile class to its own file.
2019-05-25 21:49:09 +02:00
8times9
00855552e9
Qt/MenuBar: Reorder Tools menu
2019-05-25 20:22:52 +02:00
Léo Lam
edf988b465
Merge pull request #8019 from AdmiralCurtiss/gcmemcard-header-cleanup
...
GCMemcard: A little cleanup.
2019-05-25 19:20:43 +02:00
Admiral H. Curtiss
e390fd0f4e
GCMemcard: Remove unused ability of ImportGci() to write a GCI file to disk.
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
018572018e
GCMemcard: Dismantle the global return value enum into a few function specific enum classes.
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
d09303683c
GCMemcard: Convert a few enums into constexprs.
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
cbc5acb8cd
GCMemcard: Get rid of stray signed length in ImportGciInternal().
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
2d38364410
GCMemcard: Remove memsets that don't do anything in GCMemcard::Format().
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
88a0773309
GCMemcard: Rewrite checksum calculation without undefined behavior.
2019-05-25 17:58:05 +02:00
Admiral H. Curtiss
fcd75841ca
GCMemcard: Rewrite Header::CalculateSerial() without undefined behavior.
2019-05-25 17:58:05 +02:00
Léo Lam
5fb56505b2
Merge pull request #8109 from leoetlino/ios-usb-fixes
...
IOS: USB fixes
2019-05-24 22:03:46 +02:00
Léo Lam
6dd0fe21f2
IOS/USB: Claim all interfaces ahead-of-time
...
To avoid having to claim/release interfaces all the time, and having to
trigger interface changes from several places, all interfaces are now
claimed ahead of time.
This commit also makes us avoid changing the active interface when it's
not necessary.
Changing the active interface has side effects such as resetting the
active alternate setting -- which is extremely undesirable because it
would require the emulated software to change the alternate setting
again, which isn't supposed to be necessary at all.
This fixes Your Shape, which submits isochronous transfers on an
endpoint that only exists in alt setting 6 right after submitting
control transfers (which would have reset to alt setting 0 prior to
this fix).
2019-05-24 20:47:46 +02:00
8times9
aeb02d83db
Qt/InterfacePane: Move "Keep on Window on Top" to Render Window section
2019-05-24 13:18:49 -05:00
Léo Lam
e07b514b62
Merge pull request #8115 from booto/powerpc_pvr
...
PowerPC: Add Broadway's PVR (retail Wii)
2019-05-24 14:51:06 +02:00
Léo Lam
9373bc3aa9
Merge pull request #8102 from dreamsyntax/debug-mousefix
...
Qt/Debugger CodeWidget navigation unification
2019-05-24 14:49:05 +02:00
dreamsyntax
e06a62d9d1
Qt: Fix CodeWidget navigation
...
Changed itemSelectionChanged and itemClicked signal to itemPressed in CodeWidget.
Holding mouse down and moving will only travel up/down the stack one time.
This fixes the common occurrence of unintentionally traveling deeper down the stack or higher up the callstack than intended.
2019-05-24 14:39:15 +02:00
Léo Lam
6eb7c525b2
Merge pull request #7801 from GerbilSoft/feature/Discord-PPCTitleChanged
...
Update Discord rich presence when the PPC title changes
2019-05-24 14:30:52 +02:00
David Korth
8417c78b7a
Update Discord rich presence when the title changes
...
This allows us to update the rich presence description if a channel
is launched from the Wii Menu. It also handles other PPC title
launches, e.g. Smash Bros. Masterpieces.
Host.h: Added Host_TitleChanged().
DolphinNoGUI/MainNoGUI.cpp: Implemented Host_TitleChanged().
DolphinQt/Host.cpp: Implemented Host_TitleChanged().
Android/jni/MainAndroid.cpp: Stubbed Host_TitleChanged().
DSPTool/StubHost.cpp: Stubbed Host_TitleChanged().
UnitTests/StubHost.cpp: Stubbed Host_TitleChanged().
2019-05-24 14:12:48 +02:00
booto
27cb407ecf
PowerPC: Add Broadway's PVR (retail Wii)
2019-05-23 19:56:41 -04:00
Léo Lam
702344ba9c
Merge pull request #8105 from 8times9/render-window
...
Qt/InterfacePane: Rename "In-Game" to "Render Window"
2019-05-23 13:06:36 +02:00
Léo Lam
617747e905
Merge pull request #8113 from lioncash/ini-key
...
Common/IniFile: Simplify Set()
2019-05-23 12:15:30 +02:00
Léo Lam
67c2aa0701
Merge pull request #8114 from lioncash/ini-line
...
IniFile: Prevent potential out-of-bounds access in ParseLine()
2019-05-23 12:12:41 +02:00
Lioncash
2ae370fc37
IniFile: Prevent potential out-of-bounds access in ParseLine()
...
While current usages of ParseLine aren't problematic, this is still a
public function that can be used for other purposes. Essentially makes
the function handle potential external inputs a little nicer.
2019-05-22 21:09:11 -04:00
Lioncash
869acb96c6
Common/IniFile: Simplify Set()
...
We can just utilize map's insert_or_assign() function and check the
return value to determine whether or not we need to insert the key into
the keys_order vector.
2019-05-22 20:58:49 -04:00
Connor McLaughlin
68877c52d1
Merge pull request #8027 from MerryMage/MOVAPS
...
Jit64: Prefer MOVAPS where possible
2019-05-22 15:05:17 +10:00
booto
03d7fef5a6
ARAM: No ARAM backing DMA in wiimode
2019-05-21 22:23:42 -04:00
booto
70299f2505
ARAM: rework DMA
...
Changes include:
* Take into account how different size settings interact
* Do ARAM DMA transfers in chunks rather than all-at-once
2019-05-21 22:23:42 -04:00
booto
73c0a4ee81
DSP: Experiment with cleaning up ARAM accessor
2019-05-21 22:23:42 -04:00
Léo Lam
2b44e1b851
IOS/USB: Fix initial device scan
...
Even though libusb is supposed to be thread-safe, in practice
it's not (at least on Windows); getting a list of devices from two
different threads can result in libusb crashes. This is easily
fixed by waiting for the scan thread to complete scanning instead
of running the scan on the CPU thread.
This also fixes an issue that I had overlooked in the initial
implementation: IOS interfaces such as OH0 are sometimes opened
every frame, in which case we were doing a full device scan every
single frame on the CPU thread!
2019-05-21 19:07:30 +02:00
Léo Lam
b274a054a9
IOS/VEN: Read cancel endpoint correctly
...
Fixes an embarrassing bug that made the implementation utterly useless.
This fixes Your Shape hanging on shutdown. The game was waiting for an
interrupt transfer to be cancelled, and Dolphin wasn't cancelling
transfers on the correct endpoint.
2019-05-21 19:07:30 +02:00
Léo Lam
d7e23d71f8
IOS/VEN: Return -4 when no transfer was cancelled
...
Simple accuracy fix.
2019-05-21 19:07:30 +02:00
Léo Lam
4c6ef81291
IOS/USB: Verify that isochronous req buffer size is consistent
...
To catch possible bugs.
2019-05-21 19:07:30 +02:00
Léo Lam
a6da38d75d
IOS/USB: Fix TransferCommand length type
...
The total buffer size for isochronous transfers should be a u32,
not a u16. It is easy to hit the bug with devices such as cameras,
which require larger buffers.
This fixes Your Shape.
This also fixes the length type for bulk and interrupt transfers,
which should be u32 as that's what IOS supports. I'm not sure why
I made them u16... probably because OH0 uses u16 for most lengths...
2019-05-21 19:07:30 +02:00
Léo Lam
5226d6103a
IOS/USB: Add debug logging for all transfers
...
This makes debugging USB issues easier.
2019-05-21 19:07:29 +02:00
Léo Lam
57fbf1cd6e
Merge pull request #8107 from lioncash/string
...
DolphinQt/AboutDialog: Remove unnecessary QStringLiteral
2019-05-21 18:44:37 +02:00
Lioncash
1d22e50899
Core/Boot/Boot: Amend use-after-move cases in GenerateFromFile()
...
In terms of order of operations, the move would occur first before the
construction of the relevant reader would occur. However, given the
local variable 'path' was declared const, this bug actually wouldn't
occur, as std::move on a const variable does nothing (in a non-mutable
context), resulting in a copy instead, masking this issue.
Given this is a bug waiting to happen, we correct the code.
2019-05-21 08:44:29 -04:00
Lioncash
ae329b7b1b
DolphinQt/AboutDialog: Remove unnecessary QStringLiteral
...
QStrings automatically initialize to an empty string by default, making
this unnecessary.
2019-05-21 07:13:14 -04:00
Léo Lam
e2c769a9c5
Merge pull request #7992 from artemist/centering
...
ControllerEmu: Add support for setting the center of a ReshapableInput
2019-05-20 18:29:31 +02:00
Léo Lam
d2c7a6f239
Merge pull request #8094 from leoetlino/log-type-names
...
Qt/LogConfigWidget: Show log type short names
2019-05-20 18:27:57 +02:00
Artemis Tosini
4bbbd02de7
ControllerEmu: Do not change center when closing window
2019-05-19 16:55:29 +00:00
8times9
ba3b59fd18
Qt/InterfacePane: Rename In-Game to Render Window
2019-05-18 16:01:38 -05:00
Artemis Tosini
e5683988c0
ControllerEmu: Zero the center of a ReshapableInput when calibrating
2019-05-18 19:32:48 +00:00
Artemis Tosini
99cf9a57fc
Draw center when calibrating and remove constant
...
This adds the center to the calibration menu when it is nonzero.
It also refactors CENTER_COLOR to be a function, similar to other colors
after an earlier commit.
2019-05-18 18:36:28 +00:00
Artemis Tosini
49e46c8aff
ControllerEmu: Add support for setting the center of a ReshapableInput
...
This is useful in far out-of-calibration controllers, such as the
Switch Pro controller. This also adds support for configuring the center
in the Mapping widget.
2019-05-18 14:45:16 +00:00
Admiral H. Curtiss
6e04e4dd6a
GCMemcard: DEntry: Move code out of header.
2019-05-18 15:44:38 +02:00
Admiral H. Curtiss
17da22a84f
GCMemcard: GCMBlock: Move code out of header.
2019-05-18 15:44:38 +02:00
Admiral H. Curtiss
e4094d9d2d
GCMemcard: BlockAlloc: Move code out of header, fix naming conventions.
2019-05-18 15:44:38 +02:00
Admiral H. Curtiss
4b46f71b3c
GCMemcard: Header: Move code out of header, fix naming conventions.
2019-05-18 15:44:38 +02:00
Admiral H. Curtiss
0052b313d6
GCMemcard: Directory: Move code out of header, add some boundary checks, fix naming conventions.
2019-05-18 15:44:38 +02:00
Léo Lam
d3c4d278e2
Merge pull request #8077 from leoetlino/debugger-valign
...
Qt/Debugger: Fix register cell text vertical alignment
2019-05-17 20:17:52 +02:00
spycrab
481b7cd085
DolphinQt/CMake: Fix Gettext not getting run on Windows
2019-05-15 19:19:16 +02:00
spycrab
bdd37c4dbc
DolphinQt/CMake: Copy files as a post build step
2019-05-15 19:19:15 +02:00
spycrab
ec734065db
Merge pull request #8087 from spycrab/cmake_win2019
...
Support CMake on Windows
2019-05-14 21:07:26 +02:00
Vincent Cunningham
b35c58451a
Clear existing GCPad state
2019-05-14 03:33:29 -04:00
Connor McLaughlin
0ab41717a4
Merge pull request #8095 from leoetlino/audio-race
...
Fix a race condition when shutting down audio stream
2019-05-12 15:18:36 +10:00
Connor McLaughlin
707266aeed
Merge pull request #8069 from iwubcode/passive_support
...
VideoCommon: Implement passive stereoscopic 3D
2019-05-12 15:15:34 +10:00
spycrab
ba83cec6fb
Qt/CMake: Support MSVC w/ external CMake
2019-05-12 00:44:02 +02:00
spycrab
c8795f799e
Core/CMake: Silence some warnings
2019-05-12 00:44:02 +02:00
spycrab
1121a04718
DolphinQt/CMake: Silence some warnings
2019-05-12 00:44:01 +02:00
spycrab
199c0943a4
DolphinQt/CMake: Building on Windows
2019-05-12 00:05:10 +02:00
spycrab
6cef70c182
VideoBackends/D3D: Fix CMakeLists.txt
2019-05-12 00:05:09 +02:00
spycrab
b5160ec685
Common/CMake: Fix Windows build
2019-05-12 00:05:08 +02:00
TryTwo
86d1e6cd7e
Qt/Debugger: Improve Code View
...
* Use font based sizing for row height. Fits more rows on screen.
* Adds whitespace for better formatting and minimum column width.
Helps prevent frequent resizing while scrolling.
2019-05-11 17:48:49 +02:00
Léo Lam
7c46497f04
Fix a race condition when shutting down audio stream
...
The main EmuThread (in Core) is responsible for both initialising the
audio stream and shutting it down properly.
When the core is shutting down (when state is State::PowerDown), it is
possible that the CPU or CPU-GPU thread and the UI thread will both
try to stop the audio stream at the same time, which is an issue
because some audio backends such as cubeb are not thread-safe.
This commit prevents the race from ever happening in the first place
by removing the call to AudioCommon::SetSoundStreamRunning from
CPU::RunAdjacentSystems, which is actually completely unnecessary when
shutting down because Core::EmuThread is going to stop the stream and
perform more cleanup anyway.
Should fix https://bugs.dolphin-emu.org/issues/11722
2019-05-11 16:36:42 +02:00
Léo Lam
453c1d4170
Qt/LogConfigWidget: Show log type short names
...
Makes it easier for users to determine which option they need to
enable/disable as log messages only show the short name.
2019-05-11 16:05:22 +02:00
Miksel12
ee8226cc1b
Set Cubeb as default on Windows
...
Cubeb and Xaudio2 are identical in features while Cubeb has lower
latency and is still actively being worked on.
2019-05-11 14:22:03 +02:00
Léo Lam
2f89a50318
Merge pull request #7778 from jordan-woyak/wheel-accel-brake
...
SI/GCSteeringWheel: Allow simultaneous use of accelerator and brake.
2019-05-11 12:24:19 +02:00
Léo Lam
57743637de
Merge pull request #8088 from Pokechu22/modal-control-mapping
...
Allow interacting with the render window while configuring controllers
2019-05-11 10:45:28 +02:00
Léo Lam
e35ccd5a9a
Merge pull request #8091 from leoetlino/traversal-chrono
...
TraversalServer: use C++ <chrono> instead of gettimeofday
2019-05-11 10:44:49 +02:00
Anthony
3ab06dcd02
Merge pull request #8016 from jordan-woyak/emu-wm-ir-rename
...
WiimoteEmu/DolphinQt: Rename "IR" to "Point" and eliminate redundant Forward/Backward actions.
2019-05-10 19:16:40 -07:00
Anthony
46561cc242
Merge pull request #8092 from leoetlino/double-switcheroo
...
Core/AddressSpace & Qt/Debugger: Fix parameter order mixup
2019-05-10 19:11:01 -07:00
Anthony
e66d25312e
Merge pull request #8090 from stenzek/video-buffer-reset
...
CommandProcessor: Don't reset the video buffer when FIFO distance is changed
2019-05-10 19:10:39 -07:00
Léo Lam
e66547d6e5
Qt: Fix AddressSpace::WriteXXX parameter order mixup
2019-05-11 00:16:27 +02:00
Léo Lam
d00711b34f
AddressSpace: Fix PowerPC::HostWrite_XXX parameter order mixup
2019-05-11 00:15:15 +02:00
Jordan Woyak
f74f49383c
SI/GCSteeringWheel: Allow simultaneous use of accelerator and brake.
2019-05-10 17:11:43 -05:00
Michael M
916a97b869
TraversalServer: use C++ <chrono> instead of gettimeofday
2019-05-10 21:33:26 +02:00
Pokechu22
7c80fcde53
Allow interacting with the render window while configuring controllers
...
WindowModal allows alt+tabing to the render window, but prohibits interaction
with parent windows (controller settings window and the main dolphin window).
2019-05-10 11:27:36 -07:00
Léo Lam
e7bc86881d
Merge pull request #8056 from JosJuice/more-enums-to-constexpr
...
Turn more enum constants into constexpr
2019-05-10 18:52:52 +02:00
Stenzek
3e29fdb4a7
CommandProcessor: Don't reset the video buffer when FIFO distance is changed
...
This prevents partially-processed commands from being lost when switching buffers.
2019-05-11 00:31:37 +10:00
Léo Lam
672e8d78c6
Merge pull request #7994 from faxx1080/qt_adddebuglog
...
DolphinQt: Add debug log option in GUI for debug builds
2019-05-10 15:33:33 +02:00
JosJuice
8e2277e1f2
Turn more enum constants into constexpr
...
https://bugs.dolphin-emu.org/issues/11692#note-7
2019-05-10 15:04:16 +02:00
Léo Lam
123bbbca2c
Merge pull request #8073 from vladfi1/re-frame-mw
...
Bring back MemoryWatcher, but without CoreTiming
2019-05-10 14:55:27 +02:00
weihuoya
e98f43d2af
bbox minor fx
2019-05-09 17:30:17 +08:00
Jordan Woyak
374585f128
WiimoteEmu/DolphinQt: Rename "IR" to "Point" and eliminate redundant Forward/Backward mappings.
2019-05-08 20:27:41 -05:00
spycrab
c7dcba1c5f
WinUpdater: Add CMakeLists.txt
2019-05-08 23:59:04 +02:00
spycrab
f1fae37a81
DolphinQt/CMake: Don't build SignalDaemon on Windows
2019-05-08 21:10:41 +02:00
spycrab
967252dded
IOS/FS/Filesystem: Work around macro problem
2019-05-08 21:06:17 +02:00
spycrab
12a26453e9
InputCommon/ControlGroup.h: Add missing include
2019-05-08 21:03:11 +02:00
spycrab
7eaece8814
InputCommon/Device.cpp: Add missing include
2019-05-08 21:02:26 +02:00
spycrab
98d808ab71
InputCommon/DInput.h: Add missing include
2019-05-08 21:01:46 +02:00
spycrab
5625baa32c
UICommon/VideoUtils.cpp: Add missing include
2019-05-08 21:00:23 +02:00
spycrab
35f7abfe76
VideoBackends/D3DCommon: Fix linking against self
2019-05-08 20:59:15 +02:00
Léo Lam
1030dec340
DolphinQt: Use LogTypes::LOG_LEVELS instead of magic numbers
...
Also gets rid of two unnecessary casts.
2019-05-08 14:54:30 +02:00
Frank
57c64e57ef
DolphinQt: Add debug log option in GUI for debug builds
2019-05-08 14:47:34 +02:00
Vlad Firoiu
239af3cdf9
Step MemoryWatcher at end of each video frame.
2019-05-08 11:20:59 +01:00
Léo Lam
6607d9512f
Merge pull request #8081 from jordan-woyak/structured-binding
...
DolphinQt: Use a structured binding.
2019-05-08 10:37:15 +02:00
Jordan Woyak
0de6b5f7fa
WiimoteEmu: Implement "Drawsome" tablet.
2019-05-07 18:07:24 -05:00
JosJuice
91f5d577cc
Merge pull request #8084 from leoetlino/wiisave-sign
...
WiiSave: Fix save signing
2019-05-07 14:43:50 +02:00
Léo Lam
2740ff9a9d
WiiSave: Fix save signing
...
The system menu is passing the SHA1 hash of the save data to ES
to sign, not the save data itself.
Fixes save import in the System Menu for saves that were exported
by Dolphin.
2019-05-07 01:09:48 +02:00
Jordan Woyak
f055d37346
WiimoteEmu: Add game quirk report for reading of EXT/IR input directly, which will fail with TAS/NetPlay.
2019-05-06 15:36:05 -05:00
Jordan Woyak
6ebd35d511
DolphinQt: Use a structured binding.
2019-05-06 15:33:57 -05:00
Techjar
ff972e3673
Reformat repo to clang-format 7.0 rules
2019-05-06 18:48:04 +00:00
Vlad Firoiu
f4d950f4e2
Revert "Core: Remove MemoryWatcher"
...
This reverts commit 0c02e77eee
.
2019-05-05 21:43:45 +01:00
JosJuice
bb1ed46753
Use [[fallthrough]] in DiscExtractor
...
This was missed in PR 6273 because the fallthrough was added to
DiscExtractor after that PR was created.
2019-05-05 10:35:45 +02:00
Léo Lam
db159ec8bf
Qt/Debugger: Vertically align text in register cells
...
Looks better with the text vertically aligned.
2019-05-05 10:30:22 +02:00
iwubcode
c513bb5309
VideoCommon: Implement passive stereoscopic 3D
2019-05-04 22:58:00 -05:00
Léo Lam
ab9ece9bca
Replace MathUtil::Clamp with std::clamp
2019-05-04 23:12:17 +02:00
Léo Lam
6f84984b7b
Use attribute [[fallthrough]]
2019-05-04 23:04:18 +02:00
Léo Lam
cb168f22d6
Replace custom UNUSED macro with [[maybe_unused]]
2019-05-04 23:04:18 +02:00
Léo Lam
04c8201c32
Enable C++17
...
All supported platforms now have easy access to a compiler with C++17
support.
C++17 potentially allows for some nice cleanups and removes the need
for standard library backports (optional/variant).
See discussion at https://dolp.in/pr6264#discussion_r158134178
2019-05-04 23:04:18 +02:00
Léo Lam
99a4ca8de7
Merge pull request #7839 from ShFil119/impr/redundant
...
Remove redundant initialization
2019-05-04 22:50:51 +02:00
Léo Lam
afa46aaf43
Merge pull request #7887 from lioncash/hid
...
DolphinQt/Debugger/RegisterColumn: Add HID registers to the register pane
2019-05-04 22:33:45 +02:00
Léo Lam
623b37d928
Merge pull request #8053 from jordan-woyak/profile-dropdown-fix
...
DolphinQt: Profile combobox fixes.
2019-05-04 21:37:06 +02:00
Connor McLaughlin
184f334158
Merge pull request #8074 from Qyriad/fixes/set-user-dir-properly
...
UICommon: Properly set user dir if ./user is a file (not a directory)
2019-05-04 16:15:00 +10:00
Techjar
1dd8263375
Qt/NetPlayDialog: Fix checksum menu being visible for everyone
...
The wrong function was used to attempt to hide the menu. Non-hosts will
segfault upon trying to use it as they don't have a server instance.
2019-05-04 01:54:57 -04:00
Mikaela Szekely
8fe7e271f3
UICommon: Properly set user dir if ./user is a file (not a directory)
2019-05-03 23:30:50 -06:00
Jordan Woyak
6784225573
DolphinQt: Profile combobox fixes.
2019-05-03 16:29:22 -05:00
Léo Lam
159fa3ec36
Merge pull request #8057 from jordan-woyak/emu-tatacon
...
WiimoteEmu: Implement TaTaCon extension.
2019-05-03 11:52:39 +02:00
Léo Lam
6c7aeb3ffb
Merge pull request #8064 from JosJuice/notify-host-symbols-clear
...
Call Host_NotifyMapLoaded when clearing g_symbolDB
2019-05-03 11:47:26 +02:00
booto
2ff0486335
Debugger/Memory: Add support for address spaces
...
Different address spaces can be chosen in the memory view panel.
* Effective (or virtual): Probably the view people mostly want. Address
translation goes through MMU.
* Auxiliary: ARAM address space. Does not display anything in Wii mode.
* Physical: Physical address space. Only supports mem1 and mem2 (wii
mode) so far.
2019-05-02 21:14:30 -04:00
Jordan Woyak
27043c1dac
WiimoteEmu: Implement TaTaCon extension.
2019-05-02 19:35:46 -05:00
Léo Lam
3b16d2261a
Merge pull request #8065 from jordan-woyak/wm-ext-names
...
WiimoteEmu/DolphinQt: Better extension display names.
2019-05-02 13:14:17 +02:00
Jordan Woyak
77bda63627
DolphinQt: Don't refresh devices on open of mapping UI.
2019-05-01 19:30:02 -05:00
Jordan Woyak
99f537d499
WiimoteEmu/DolphinQt: Better extension display names.
2019-05-01 17:25:48 -05:00
Léo Lam
98b670dd29
Merge pull request #7966 from Techjar/fix-netplay-full-wii-save
...
Core/WiiRoot: Fix NetPlay full Wii save sync not copying all the saves back to main NAND
2019-05-01 19:29:38 +02:00
Léo Lam
f4d7b537cc
Merge pull request #7958 from Craftyawesome/cpu-emulation-order
...
Re-order cpu emulation options from fastest to slowest
2019-05-01 17:56:19 +02:00
JosJuice
8fd6f8f6e9
Call Host_NotifyMapLoaded when clearing g_symbolDB
...
Otherwise DolphinQt will have a stale symbol list and
you can get nullptr dereferences when trying to use it.
2019-05-01 17:48:27 +02:00
Léo Lam
bec85a0962
Merge pull request #8013 from JosJuice/titledatabase-japanese-gc
...
Show Japanese GC games in Japanese when using TitleDatabase
2019-05-01 17:37:31 +02:00
Léo Lam
ef88dd73b3
Merge pull request #8014 from JosJuice/getuniqueidentifier-language-independent
...
Make GameFile::GetUniqueIdentifier independent of language setting
2019-05-01 17:34:01 +02:00
z0z0z
5bacb2e4c6
Disable Vulkan overrides for RADV driver
2019-05-01 07:59:54 -04:00
Léo Lam
5ce8d97c68
Merge pull request #7163 from lioncash/pointer
...
BTEmu: Get rid of a few pointer casts
2019-05-01 13:13:58 +02:00
Jordan Woyak
0c81af74e1
WiimoteEmu: Drum extension accuracy improvements.
2019-04-30 20:14:12 -05:00
JMC47
e39aa5b026
Merge pull request #7880 from jordan-woyak/udraw-tablet-emu
...
WiimoteEmu: Implement 3rd-Party extension encryption and uDraw GameTablet.
2019-04-30 19:45:33 -04:00
Jordan Woyak
2babbd76d0
WiimoteEmu: Implement uDraw GameTablet.
2019-04-30 18:36:37 -05:00
Jordan Woyak
57a23cc4a0
InputCommon: Remove unused "sign" macro.
2019-04-29 18:28:56 -05:00
Filip Gawin
c110ffcdaa
Remove redundant initialization
2019-04-30 01:22:24 +02:00
JMC47
360f2b4a2f
Merge pull request #8042 from jordan-woyak/mapping-ui-clear-fix
...
DolphinQt: Fix "Default" and "Clear" buttons not updating the displayed extension.
2019-04-29 06:14:27 -04:00
JMC47
0f483e7d61
Merge pull request #8050 from Techjar/memorywatcher-determinism
...
Core: Remove MemoryWatcher
2019-04-28 22:36:11 -04:00
spycrab
6e6f833bb3
Merge pull request #8044 from jordan-woyak/indicators-on-top
...
DolphinQt: Move mapping indicators to top of UI.
2019-04-29 02:48:23 +02:00
Connor McLaughlin
aee1551a55
Merge pull request #8043 from jordan-woyak/mapping-ui-event-block-fix
...
DolphinQt: Fix mapping of space, return, and mouse-clicks.
2019-04-28 23:49:23 +10:00
Connor McLaughlin
1b1662773e
Merge pull request #8048 from stenzek/vulkan-negative-scissor-rect
...
Vulkan: Don't set a negative offset in scissor rect
2019-04-28 23:37:51 +10:00
Jordan Woyak
4e39d833ae
DolphinQt: Fix mapping of space, return, and mouse-clicks from immediately re-activating detection.
2019-04-28 08:34:47 -05:00
Stenzek
32359bf2bb
Renderer: Adjust target rectangle in the base class
2019-04-28 23:33:24 +10:00
Stenzek
3c64f0c616
Renderer: Adjust source rectangle when crop would draw off screen
...
This prevents us from requiring an oversized and/or negative viewport by
shrinking the source rectangle instead.
2019-04-28 23:31:57 +10:00
Connor McLaughlin
d2d8d7ce90
Merge pull request #8051 from JosJuice/efb-constexpr
...
Turn EFB_WIDTH/EFB_HEIGHT into constexpr
2019-04-28 20:37:25 +10:00
Techjar
0c02e77eee
Core: Remove MemoryWatcher
...
MemoryWatcher only works on Linux and affects emulation determinism due
to scheduling additional events, which causes NetPlay to desync.
Considering that this interface is a rather specialized use case, the
communication with it is kinda crappy *and* it's affecting emulation, I
think it's best to just axe it and come up with a better implementation
of the functionality.
2019-04-28 06:22:27 -04:00
JosJuice
ced2306fc5
Turn EFB_WIDTH/EFB_HEIGHT into constexpr
...
https://bugs.dolphin-emu.org/issues/11692#note-5
Also change const into constexpr while we're at it.
2019-04-28 11:50:17 +02:00
Connor McLaughlin
e17bb8cfdf
Merge pull request #8025 from chargeflux/PathPaneAddBtn
...
Qt: Fix add button not releasing
2019-04-28 17:15:42 +10:00
Connor McLaughlin
f7199397a0
Merge pull request #8047 from stenzek/d3d-feature-level-10
...
D3D11: Fix Dolphin crashing on feature level 10.0 devices
2019-04-28 17:07:37 +10:00
Pokechu22
0cb27cc42c
Fix the screen going black on pause after changing windows
...
More info: https://zeduckmaster.frama.io/2016/how-to-create-a-custom-rendering-in-a-qt5-widget/
2019-04-27 23:26:44 -07:00
Stenzek
53af27b133
FramebufferManager: Fix invalid transitions for 1xIR in EFB cache
2019-04-28 16:13:49 +10:00
Stenzek
5399995c61
Vulkan: Don't set a negative offset in scissor rect
...
The spec/validation layers say this is invalid.
2019-04-28 16:01:09 +10:00
Stenzek
025767c929
D3D: Set optional features after creating the device
...
Fixes feature level 10.0 devices crashing during runtime.
2019-04-28 15:26:49 +10:00
Stenzek
51154d6907
FramebufferShaderGen: Don't emit SV_SampleIndex when not using SSAA
2019-04-28 15:26:21 +10:00
Stenzek
d5b3595314
TextureCache: Fix incorrect format string in GetXFBTexture()
2019-04-28 14:32:37 +10:00
spycrab
906ccdb1b4
Merge pull request #8030 from spycrab/qt_patch_preview
...
Qt/Debugger: Implement patch instruction preview
2019-04-28 00:32:36 +02:00
spycrab
f6e73a0aec
Qt/Debugger: Implement patch instruction preview
2019-04-27 23:31:19 +02:00
Jordan Woyak
af8b14f452
DolphinQt: Move mapping indicators to top of UI.
2019-04-27 14:23:29 -05:00
Jordan Woyak
74a997da65
DolphinQt: Fix "Default" and "Clear" buttons not updating the displayed extension.
2019-04-27 10:51:57 -05:00
Mat M
687907e44d
Merge pull request #8035 from jordan-woyak/si-enum-constexpr
...
SI: Replace some unnamed enums with constexpr.
2019-04-27 08:40:41 -04:00
Mat M
621ede1268
Merge pull request #8040 from phire/fix_unintilized_xer
...
Fix uninitialized powerpc.xer_* variables
2019-04-27 08:36:09 -04:00
Jordan Woyak
9f0dc402f4
InputCommon: Make sure setting values are initialized in case they are used before config load.
2019-04-27 07:01:24 -05:00
JosJuice
3bef561e5d
Make GameFile::GetUniqueIdentifier independent of language setting
...
My bad.
We need this in the situation where two users are using different
languages and the game has a different name in each language.
2019-04-27 14:00:58 +02:00
MerryMage
e06111e86f
EmuCodeBlock: Prefer MOVAPS to MOVSD in ConvertDoubleToSingle
...
* The high half of the register is immediately masked so the value in it is irrelevant.
* MOVSD produces an unnecessary dependency on the high half of regOp.
* MOVAPS is implemented as a register rename on modern microarchitectures.
2019-04-27 12:57:03 +01:00
MerryMage
1baa8ee970
x64Emitter: Prefer MOVAPS to MOVSD
...
* The high half of regOp is immediately overwritten so the value in it is irrelevant.
* MOVSD produces an unnecessary dependency on the high half of regOp.
* MOVAPS is implemented as a register rename on modern microarchitectures.
2019-04-27 12:56:05 +01:00
MerryMage
2d4dd8cdc1
x64Emitter: Prefer MOVAPS to MOVAPD
...
There is no reason to use MOVAPD over MOVAPS, for two reasons:
* There has never been a microarchitecture with separate single and double domains.
* MOVAPD is one byte longer than MOVAPS
2019-04-27 12:54:43 +01:00
Scott Mansell
033f1d725f
Fix un-initialized powerpc.xer_* variables
2019-04-27 15:38:02 +12:00
Techjar
20530c2a96
Core/WiiRoot: Fix NetPlay full Wii save sync not copying all the saves back to main NAND
2019-04-26 23:33:35 -04:00
Connor McLaughlin
664cfb2ca5
Merge pull request #7970 from Techjar/netplay-mii-sync
...
NetPlay: Synchronize Mii data
2019-04-27 13:26:55 +10:00
Connor McLaughlin
b5c3542cb5
Merge pull request #8039 from iwubcode/monster_lab_fix
...
CommandProcessor: Don't reset gather pipe on write the high distance bit (fixes monster lab)
2019-04-27 13:26:29 +10:00
iwubcode
c2abf092e9
VideoCommon: Do not reset the gather pipe (WPAR buffer) as this does not reflect what actually happens on real hardware. On hardware, there's no way for the GPU to signal to reset the WPAR buffer. Instead, the WPAR buffer will be reset automatically upon receiving 32 bytes or when spr[WPAR] is written
2019-04-26 22:20:53 -05:00
JMC47
664376dae1
Merge pull request #7861 from jordan-woyak/mplus-emu
...
WiimoteEmu: Emulated MotionPlus and improved emulated swing.
2019-04-26 05:50:18 -04:00
spycrab
057fa6c092
Merge pull request #8032 from spycrab/netplay_md5
...
Qt/NetPlayDialog: Move MD5 button into menubar
2019-04-26 03:19:41 +02:00
spycrab
ea0846463f
Merge pull request #8031 from spycrab/qt_remove_iterative_input
...
Qt/Mapping: Remove iterative input
2019-04-24 14:03:17 +02:00
spycrab
8feacce783
Merge pull request #8028 from spycrab/issue_11690
...
Qt/NewPatchDialog: Fix crashes on entry removal
2019-04-24 02:49:09 +02:00
Jordan Woyak
ba1b335118
WiimoteEmu: Improve emulated swing.
2019-04-23 19:02:41 -05:00
Jordan Woyak
4374600367
WiimoteEmu: Implement MotionPlus parameter y0 and other cleanups.
2019-04-23 18:38:00 -05:00
Jordan Woyak
59e1c83445
WiimoteEmu/MotionPlus: Build non-hardcoded calibration data and other cleanups.
2019-04-23 18:38:00 -05:00
Jordan Woyak
9554ece874
WiimoteEmu: MotionPlus is now working.
2019-04-23 18:38:00 -05:00
Jordan Woyak
d97349af0d
SI: Replace some unnamed enums with constexpr.
2019-04-23 16:25:09 -05:00
spycrab
e97c61c196
Qt/NetPlayBrowser: Connect to session on double-click
2019-04-23 23:22:12 +02:00
spycrab
127b4e77ec
Merge pull request #8029 from spycrab/issue_11680
...
Qt/NetPlayBrowser: Prevent word wrap
2019-04-23 23:08:41 +02:00
spycrab
7f861f095a
Qt/Mapping: Remove iterative input
2019-04-23 22:59:34 +02:00
spycrab
8e3d1200da
Merge pull request #7833 from chargeflux/CodeWidgetHiding-macOS
...
Debugger: Apply hiding logic earlier (macOS)
2019-04-23 22:40:17 +02:00
spycrab
f7dcd191e3
Qt/NetPlayDialog: Move MD5 button into menubar
2019-04-23 22:37:22 +02:00
chargeflux
290275e8ea
Debugger: Move hiding logic via setHidden() to before setFloating()
2019-04-23 16:20:42 -04:00
spycrab
0ef3eced78
Qt/NetPlayBrowser: Prevent word wrap
2019-04-23 18:55:40 +02:00
spycrab
a6e7a90a4a
Qt/NewPatchDialog: Fix crashes on entry removal
2019-04-23 18:46:38 +02:00
chargeflux
cd5f42cee0
Qt: Fix add button not releasing
2019-04-22 20:32:01 -04:00
Markus Wick
2abe333ce9
Merge pull request #7287 from degasus/idle_skipping
...
Jit64 / JitArm64: Optimized idle skipping detection.
2019-04-22 23:08:03 +02:00
spycrab
e575fa92d7
Merge pull request #8005 from JosJuice/issue-11679
...
DolphinQt: Fix verify tab hash box sizes on macOS
2019-04-22 14:39:56 +02:00
spycrab
b4dfda0774
Merge pull request #8021 from spycrab/cm_overhaul
...
Qt/CheatManager: Fix a bunch of issues
2019-04-22 14:16:53 +02:00
spycrab
a154c56815
Qt/CheatsManager: Use ActionReplay constants
2019-04-22 14:09:47 +02:00
Connor McLaughlin
59c0e51f5b
Merge pull request #8000 from stenzek/more-videocommon-cleanup
...
Additional cleanup/fixes from VideoCommon merge
2019-04-22 12:50:22 +10:00
Connor McLaughlin
93be178f28
Merge pull request #7857 from stenzek/opengl-stereo
...
OGL: Fix stereoscopy
2019-04-22 12:41:12 +10:00
spycrab
fb841c75cb
Merge pull request #8022 from spycrab/issue_11676
...
Qt/GameConfigWidget: Show revision specific INIs
2019-04-21 21:38:56 +02:00
spycrab
e2abda0c9b
Qt/GameConfigWidget: Show revision specific INIs
2019-04-21 20:56:44 +02:00
spycrab
6c938cc070
Qt/VerifyWidget: Fix layout warnings
2019-04-21 20:28:55 +02:00
spycrab
4f7ff76801
Qt/CheatsManager: Fix locking defaulting to the value zero
2019-04-21 19:45:58 +02:00
spycrab
05eb91691c
Qt/CheatsManager: Fix value setting
2019-04-21 17:34:31 +02:00
Connor McLaughlin
44d5a71e27
Merge pull request #7965 from jordan-woyak/condvar-fixes
...
Minor changes to usages of std::condition_variable.
2019-04-21 23:50:53 +10:00
spycrab
0b56d49d97
Qt/CheatsManager: Deduplicate code
2019-04-21 15:38:59 +02:00
Jordan Woyak
a9ef110349
DolphinQt: Query mapping indicator colors using QPalette for better behavior with alternative themes.
2019-04-21 08:20:45 -05:00
spycrab
a6ed1b644b
Qt/CheatSearch: Fix locking being permanently disabled
2019-04-21 13:51:25 +02:00
Stenzek
356ebdf509
OGL: Set shared context state up to match main context
...
Has a better chance of avoiding recompiling if so.
2019-04-21 14:28:14 +10:00
Stenzek
6553cf8bb1
OGL: Only set GL_PROGRAM_POINT_SIZE on desktop GL
...
It is always enabled in GLES.
2019-04-21 14:28:14 +10:00
Stenzek
f2a594fad5
OGL: Fix binding error on shutdown
...
This was occurring if the imgui vertex format was bound on shutdown,
which is destroyed before the vertex buffers
2019-04-21 14:28:14 +10:00
Stenzek
9577d0641b
ShaderCache: Fix crash at shutdown on shared shader compilation fail
2019-04-21 14:28:14 +10:00
Stenzek
5c95dc61fc
OGL: Store shader source in OGLShader
...
So it can be dumped with info log when linking fails.
2019-04-21 14:28:14 +10:00
Stenzek
bbd1ae16db
OGL: Remove unused ProgramShaderCache::CompileShader()
2019-04-21 14:28:14 +10:00
Stenzek
f8c1ba409c
Replace EFBRectangle/TargetRectangle with MathUtil::Rectangle
2019-04-21 14:28:14 +10:00
JMC47
6ea43235d5
Merge pull request #7841 from iwubcode/config-mgr-onion
...
Config: Move the 'Display' settings from ConfigManager to the layered config system
2019-04-21 00:01:47 -04:00
Connor McLaughlin
ca55375d01
Merge pull request #8015 from jordan-woyak/dinput-cursor-optimize
...
ControllerInterface/DInput: Optimize cursor position updating.
2019-04-21 13:56:50 +10:00
Connor McLaughlin
5b4ebccf6b
Merge pull request #8012 from stenzek/bounding-box-shaders
...
PixelShaderGen: Don't emit bounding box shader code for old UIDs when disabled
2019-04-21 13:27:05 +10:00
Stenzek
b09a0e1a60
TextureCache: Check for out-of-range partial copy rect after scaling
2019-04-21 12:54:32 +10:00
Stenzek
3791262d96
TextureCache: Use linear filtering on y-scaled and >1xIR VRAM copies
2019-04-21 12:41:15 +10:00
Stenzek
708bd3d9f7
TextureCache: Simplify XFB reconstruction
...
This also better handles in-memory interlaced XFB data placed by the CPU
by considering the stride from the VI.
2019-04-21 12:41:15 +10:00
Stenzek
dbaba0062a
TextureDecoder: Move XFB decoding to Common
...
This was previously missing for generic (which is used on ARM).
2019-04-21 12:41:15 +10:00
degasus
6ec4ade3b6
Interpreter: Drop idle skipping in interpreter.
...
And reimplement it in the cached interpreter based on the idle loop detection.
2019-04-20 20:52:39 +02:00
degasus
55abe1a085
Jit64: Refactor WriteIdleExit helper.
2019-04-20 20:52:39 +02:00
degasus
b8b4b4a383
PowerPC: More idle loop detections.
2019-04-20 20:52:39 +02:00
degasus
55db7c7a05
Jit64: Optimized idle skipping detection.
2019-04-20 20:52:39 +02:00
Jordan Woyak
8c1310d1d1
ControllerInterface/DInput: Optimize cursor position updating.
2019-04-20 09:25:11 -05:00
Stenzek
eddde3e6c8
ShaderGen: Use interface blocks when geometry shaders are supported
...
We don't use explicit locations in OpenGL currently, so this breaks
when we use alternative names in the geometry shaders.
2019-04-20 23:44:33 +10:00
Stenzek
c6b45c5ca9
ShaderCache: Fix crash if pipeline from uid cache fails creation
2019-04-20 23:16:29 +10:00
Stenzek
96aa762d1e
PixelShaderGen: Don't emit bounding box shader code for old UIDs when disabled
...
If bounding box is enabled when a UID cache is created, then later disabled,
we shouldn't emit the bounding box portion of the shader.
Fixes pipeline creation errors on D3D12 backend for this case.
2019-04-20 23:16:14 +10:00
JosJuice
fbe7892bd2
ConfigManager: Remove TitleDatabase.h include
...
Made unnecessary by 8842a0f
.
2019-04-20 12:30:46 +02:00
JosJuice
e98f5fe665
Show Japanese GC games in Japanese when using TitleDatabase
...
Because the GC language setting cannot be set to Japanese, we
need a special condition for Japanese GC games. I accidentally
removed it in PR 7816, but here it is again in a new form.
We could do the same thing with Korean GC games if we want to
(which we couldn't do before PR 7816), but due to how spotty
GameTDB is with having Korean names for Korean GC releases,
things will be more consistent if we just use English for them.
2019-04-20 12:12:35 +02:00
Connor McLaughlin
c26f53bf84
Merge pull request #7999 from stenzek/pipeline-cache-data
...
Implement pipeline data cache for OpenGL and D3D12
2019-04-20 12:56:02 +10:00
JosJuice
f0323a59c3
DolphinQt: Fix verify tab hash box sizes on macOS
...
https://bugs.dolphin-emu.org/issues/11679
2019-04-19 19:15:04 +02:00
Jordan Woyak
779e618046
VideoCommon: Change free-look's middle-mouse action to roll the camera.
2019-04-17 05:10:11 -05:00
Jordan Woyak
1d024c8add
Fix u8 string literal C++20 compile error.
2019-04-16 16:31:12 -05:00
Markus Wick
f1620f25f4
Merge pull request #7981 from degasus/interpreter_psq_l
...
Interpreter: Fix psq_l with QUANTIZE_FLOAT.
2019-04-16 22:27:07 +02:00
Markus Wick
dbfdb16fbb
Merge pull request #7990 from MerryMage/fprf
...
EmuCodeBlock: Correct zero handling in SetFPRF for SSE4.1
2019-04-16 22:13:05 +02:00
JMC47
80d21b8ffb
Merge pull request #8002 from JMC47/CursorSlowdown
...
Slow down relative input cursor
2019-04-15 20:43:31 -04:00
JMC47
f3aaf5deaa
Reduce Relative Input Cursor Speed Dramatically
...
This makes it about 1/4th the speed which may be a bit slow, but should
work for most controllers.
2019-04-15 17:23:17 -04:00
Stenzek
00b83b4196
ShaderCache: Utilize pipeline cache data where possible
2019-04-16 00:39:43 +10:00
Stenzek
616ad378b7
OGL: Support returning pipeline cache data
2019-04-16 00:39:43 +10:00
Stenzek
5cef09e383
D3D12: Support returning pipeline cache data
2019-04-16 00:34:34 +10:00
Stenzek
61a656570e
AbstractPipeline: Support returning "cache data"
...
"Cache data" can be used to assist a driver with creating pipelines by
using previously-compiled shader ISA.
2019-04-16 00:09:47 +10:00
JosJuice
d7b5270348
Merge pull request #7988 from JosJuice/fix-wii-save-import
...
Fix importing Wii save files with sizes not divisible by 64
2019-04-14 17:17:00 +02:00
spycrab
0f8e5ab207
Merge pull request #7968 from Techjar/fix-netplay-browser-search-hang
...
Qt/NetPlayBrowser: Refresh session list asynchronously
2019-04-14 03:11:31 +02:00
JMC47
1cedbd5b82
Merge pull request #7923 from jordan-woyak/full-surface-rename
...
ControllerInterface: Rename full surface analog inputs.
2019-04-13 17:43:29 -04:00
JMC47
a891115ea3
Merge pull request #7952 from jordan-woyak/emu-shake-params
...
WiimoteEmu: Allow shake frequency and intensity to be configured.
2019-04-13 12:13:13 -04:00
Jordan Woyak
be897b41a7
ControllerInterface: Rename full surface analog inputs to be more visually dissimilar from their underlying inputs. e.g. "Full Axis X+".
2019-04-13 08:45:19 -05:00
spycrab
241166a1a5
Merge pull request #7991 from spycrab/npi_retcode
...
UICommon/NetPlayIndex: Handle non 200 HTTP return codes
2019-04-13 15:24:10 +02:00
spycrab
336edbef1e
UICommon/NetPlayIndex: Handle non 200 HTTP return codes
2019-04-13 12:58:23 +02:00
spycrab
eddcb70b84
Common/HttpRequest: Add option to allow non 200 response codes
2019-04-13 12:58:23 +02:00
Techjar
6d01f34d78
Core/NetPlayClient: Reset GCAdapter device type in UpdateDevices
...
This will ensure an origin reset is triggered on next boot.
2019-04-13 06:32:45 -04:00
Jordan Woyak
c89ddf8cba
WiimoteEmu: Allow shake frequency and intensity to be configured. Other minor cleanups.
2019-04-12 16:50:59 -05:00
JosJuice
635fd8c22c
Merge pull request #7984 from JosJuice/root-path-savestate
...
IOS/FS: Don't savestate m_root_path
2019-04-12 22:37:21 +02:00
MerryMage
e4d83a56a5
EmuCodeBlock: Correct zero handling in SetFPRF for SSE4.1
2019-04-12 20:03:42 +01:00
spycrab
2a1dee4dce
Merge pull request #7976 from spycrab/netplay_index_feedback
...
Qt/NetPlay: Show feedback for index adding
2019-04-12 14:21:42 +02:00
JosJuice
4f915760e8
Fix importing Wii save files with sizes not divisible by 64
2019-04-12 11:34:32 +02:00
Techjar
c7c4196c38
Qt/NetPlayBrowser: Refresh session list asynchronously
2019-04-11 22:02:13 -04:00
spycrab
f2e3f69d34
Merge pull request #7979 from Techjar/netplay-browser-possible-crash
...
UICommon/NetPlayIndex: Fix possible crash when Add is called again
2019-04-11 21:49:58 +02:00
spycrab
8b6bb39e82
Qt/NetPlay: Show feedback for index adding
2019-04-11 21:26:00 +02:00
spycrab
b9d110ed66
WinUpdater: Restore original executable name
2019-04-11 20:21:50 +02:00
JosJuice
822acf9ab9
IOS/FS: Don't savestate m_root_path
...
The NAND root path can be different on different systems,
so we must not savestate it.
2019-04-11 18:50:15 +02:00
JosJuice
d5ed3cbd88
Merge pull request #7922 from JosJuice/verify-disc
...
Add a Verify tab to game properties
2019-04-11 16:39:49 +02:00
spycrab
372b8552ce
Merge pull request #7974 from spycrab/winupdater
...
Move Updater to WinUpdater
2019-04-11 12:04:31 +02:00
degasus
399768c91b
Interpreter: Fix psq_l with QUANTIZE_FLOAT.
...
psq_l with QUANTIZE_FLOAT does not use the FPU, so it does not trim the precision of the u32 input data.
We already have the helper ConvertToDouble for floating point u32->u64 convertion used in lfs, so let's use it here as well.
2019-04-11 10:12:59 +02:00
Markus Wick
849ede9d0a
Merge pull request #7639 from CrystalGamma/pr-quantize
...
PowerPC: Thread state through PS (de)quantize helpers
2019-04-11 10:11:08 +02:00
CrystalGamma
e5c8b889ef
PowerPC: Thread state through PS quantize helper
2019-04-11 10:03:36 +02:00
CrystalGamma
e12cdbefa5
PowerPC: Thread state through PS dequantize helper
2019-04-11 10:03:36 +02:00
Techjar
f1e06b89da
UICommon/NetPlayIndex: Fix possible crash when Add is called again
2019-04-10 22:39:16 -04:00
Jordan Woyak
a9a4b53072
WiimoteEmu: Fix Data Report 0x32.
2019-04-10 20:17:34 -05:00
Markus Wick
d90d641ec7
Merge pull request #7889 from CrystalGamma/pr-floathelpers
...
PowerPC: Thread state through float helpers
2019-04-10 23:14:39 +02:00
Markus Wick
5a4700f589
Merge pull request #7638 from CrystalGamma/pr-addresshelpers
...
PowerPC: Thread state through the address helpers
2019-04-10 23:05:43 +02:00
spycrab
d73987e466
Move Updater to WinUpdater
2019-04-10 10:46:49 +02:00
spycrab
1f6c67a6fb
Merge pull request #7969 from Techjar/fix-browser-radio-spacing
...
Qt/NetPlayBrowser: Fix radio button spacing
2019-04-10 08:11:42 +02:00
Techjar
b8abfba20b
Qt/NetPlayBrowser: Fix radio button spacing
...
The spacing was weird due to widgets in adjacent rows messing with the
column size, so we'll make those widgets span all the columns.
2019-04-09 19:41:58 -04:00
JMC47
e10a472134
Merge pull request #7936 from jordan-woyak/numeric-setting-cleanup
...
InputCommon: Clean up how numeric settings are handled.
2019-04-09 19:30:26 -04:00
JosJuice
8709b21ac3
VolumeVerifier: Verify WAD contents
2019-04-09 14:18:46 +02:00
JosJuice
a469fb3150
VolumeVerifier: Check whether invalid blocks are unused
2019-04-09 14:18:46 +02:00
JosJuice
eced9d7c7e
VolumeVerifier: Calculate CRC32/MD5/SHA-1
2019-04-09 14:18:46 +02:00
JosJuice
4fd2d8e8c4
VolumeVerifier: Check hashes in Wii partitions
2019-04-09 14:18:45 +02:00
JosJuice
84cbd5150f
Add a Verify tab to game properties
2019-04-09 14:18:41 +02:00
spycrab
0b8ac0a22f
Merge pull request #7971 from Techjar/go-away-golf-ui
...
Qt/NetPlayDialog: Don't create golf UI when host input authority is disabled
2019-04-09 13:14:54 +02:00
spycrab
a06c7df927
Merge pull request #7954 from Techjar/netplay-disable-bba
...
Disable BBA in NetPlay
2019-04-09 13:13:05 +02:00
spycrab
627a1a90c1
Merge pull request #7938 from Techjar/netplay-pending-start-stall
...
NetPlay: Fix hosting being stuck if player leaves during pending start
2019-04-09 13:07:17 +02:00
spycrab
746849f891
Merge pull request #7964 from Techjar/fix-netplayindex-segfault
...
UICommon/NetPlayIndex: Fix random segfaults after quitting NetPlay
2019-04-09 12:45:58 +02:00
Techjar
cd6c918973
Qt/NetPlayDialog: Don't create golf UI when host input authority is disabled
2019-04-08 07:09:20 -04:00
Techjar
1b8eda827b
NetPlay: Synchronize Mii data
...
It's bundled with the Wii saves for simplicity, since it's quite small.
2019-04-08 07:06:21 -04:00
spycrab
75f1a5d0cc
Qt/NetPlayBrowser: Various small fixes
2019-04-08 00:01:23 +02:00
Jordan Woyak
5efb717873
InputCommon: Clean up how numeric settings are handled. Add units of measure to UI. Eliminate hidden magic values of the IR cursor.
2019-04-07 09:32:49 -05:00
Techjar
c90df946ba
NetPlay: Add cancel button for chunked data transfers
2019-04-07 06:22:33 -04:00
Techjar
7870704087
NetPlay: Fix hosting being stuck if player leaves during pending start
...
The logic didn't account for the case where a player leaves, so the
host would be left in a dangling state where the UI is disabled but the
game won't start, requiring a full restart of Dolphin to fix.
2019-04-07 06:22:31 -04:00
Jordan Woyak
d34a9afe04
Minor changes to usages of std::condition_variable.
2019-04-06 17:39:25 -05:00
Techjar
dc552f2cbb
UICommon/NetPlayIndex: Fix random segfaults after quitting NetPlay
...
We can't join a detached thread, so NetPlayIndex gets deleted before
the notification thread exits, creating a race condition. We switch to
using Common::Event because just sleeping leaves the UI hung on the
thread join for a few seconds.
2019-04-06 17:23:37 -04:00
JMC47
75e74315e6
Merge pull request #7689 from jordan-woyak/sdl-improve
...
ControllerInterface: SDL cleanups/fixes
2019-04-06 14:53:51 -04:00
spycrab
ca5eac0c63
Common/HttpRequest: Fix EscapeComponent leaking memory
2019-04-06 13:27:49 +02:00
spycrab
23986d48f7
Merge pull request #7945 from spycrab/np_browser
...
Qt/NetPlay: Implement session/server browser
2019-04-06 12:36:29 +02:00
spycrab
094bf0d2ff
Qt/NetPlay: Integrate NetPlayIndex
2019-04-06 12:27:30 +02:00
JMC47
a7ee00ae25
Merge pull request #7960 from Techjar/netplay-fix-segfault-on-exit
...
Qt/MainWindow: Fix segfault on exit while NetPlay is open
2019-04-05 11:48:07 -04:00
spycrab
e44433c2f6
Merge pull request #7955 from Techjar/netplay-golf-mode
...
NetPlay golf mode
2019-04-05 17:25:23 +02:00
Techjar
6c393f9ff4
Add imgui golf mode overlay
2019-04-05 07:01:03 -04:00
Techjar
1a12876330
NetPlay: Implement golf mode
...
This is an extension of host input authority that allows switching the
host (who has zero latency) on the fly, at the further expense of
everyone else's latency. This is useful for turn-based games where the
latency of players not on their turn doesn't matter.
To become the so-called golfer, the player simply presses a hotkey.
When the host is the golfer, latency is identical to normal host input
authority.
2019-04-05 07:01:03 -04:00
Techjar
ab6583b430
Qt/MainWindow: Fix segfault on exit while NetPlay is open
2019-04-05 03:12:25 -04:00
Craftyawesome
20cc4508f0
Re-order cpu emulation options from fastest to slowest
...
Based on https://bugs.dolphin-emu.org/issues/11658
Update arrays.xml
2019-04-04 10:51:12 -04:00
JosJuice
bfde5b931e
Merge pull request #7956 from spycrab/fix_np_chat_escape
...
Qt/NetPlayDialog: Fix messages being html-escaped for NetPlay Chat
2019-04-03 18:50:33 +02:00
spycrab
923151e3e3
Merge pull request #7949 from spycrab/turbo_btn
...
Qt/TAS: Implement turbo mode
2019-04-03 18:43:11 +02:00
Techjar
a318c55cec
PixelShaderGen: Fix bounding box coordinates being offset by 1 pixel
2019-04-03 10:09:05 -04:00
JMC47
a2df9beb9f
Merge pull request #7924 from jordan-woyak/info-widget-fix
...
DolphinQt: Fix unused widgets in InfoWidget from being visible.
2019-04-02 19:59:44 -04:00
spycrab
628d72c67d
Qt/NetPlayDialog: Fix messages being html-escaped for NetPlay Chat
2019-04-02 23:23:38 +02:00
CrystalGamma
b00a7045aa
PowerPC: Thread state through float helpers
2019-04-02 19:59:29 +02:00
CrystalGamma
95b06d183e
PowerPC: Thread state through the address helpers
2019-04-02 19:52:59 +02:00
Techjar
e2f1da5210
NetPlay: Move host input authority logic to client
...
This is a prerequisite for golf mode, as the client needs to be in
control of sending pad states.
2019-04-02 08:17:13 -04:00
Techjar
980c076c67
Disable BBA in NetPlay
2019-04-01 09:14:28 -04:00
Stenzek
474500f07e
Vulkan: Prevent submission of command buffer with open queries
2019-04-01 20:49:42 +10:00
Stenzek
f2d8c8d2a8
D3D12: Fix rare case where command list was executed with open queries
2019-04-01 20:49:24 +10:00
Stenzek
92f1f553d1
D3D12: Fix case where perf queries weren't flushed
2019-04-01 20:13:39 +10:00
Connor McLaughlin
32e330eb35
Merge pull request #7950 from stenzek/out-of-range-efb-copies
...
BPStructs: Gracefully handle out-of-range EFB copies
2019-04-01 13:08:11 +10:00
Stenzek
113bd60fe7
Implement D3D12 backend
2019-04-01 11:24:55 +10:00
Jordan Woyak
2b6d718636
InputCommon: Fix Win32 init race.
2019-03-31 07:46:58 -05:00
Stenzek
378b605669
BPStructs: Gracefully handle out-of-range EFB copies
...
Since the copy X and Y coordinates/sizes are 10-bit, the game can configure a
copy region up to 1024x1024. Hardware tests have found that the number of bytes
written does not depend on the configured stride, instead it is based on the
size registers, writing beyond the length of a single row. The data written
for the pixels which lie outside the EFB bounds does not wrap around instead
returning different colors based on the pixel format of the EFB.
This suggests it's not based on coordinates, but instead on memory addresses.
The effect of a within-bounds size but out-of-bounds offset
(e.g. offset 320,0, size 640,480) are the same.
As it would be difficult to emulate the exact behavior of out-of-bounds reads,
instead of writing the junk data, we don't write anything to RAM at all for
over-sized copies, and clamp to the EFB borders for over-offset copies.
2019-03-31 22:05:53 +10:00
spycrab
039b1baa3a
Qt/TAS: Implement turbo mode
2019-03-31 05:27:34 +02:00
Connor McLaughlin
39139a52e7
Merge pull request #7939 from Techjar/no-more-disabled-gfx-features
...
Qt/HacksWidget: Fix backend feature support checks
2019-03-31 11:59:34 +10:00
spycrab
0866ec3fb0
Merge pull request #7948 from spycrab/open_failed_warn
...
Qt/GameConfigEdit: Show warning if opening in an external editor fails
2019-03-31 03:37:54 +02:00
spycrab
74c1e92640
Qt/GameConfigEdit: Show warning if opening in an external editor fails
2019-03-31 03:30:41 +02:00
iwubcode
840afc2ad4
Config: Move the 'Display' settings from ConfigManager to the layered config system
2019-03-30 18:43:02 -05:00
JMC47
735a705e4d
Merge pull request #7776 from jordan-woyak/wm_devicechange
...
Add hotplug support to DInput and XInput controller backends
2019-03-30 18:41:46 -04:00
spycrab
3d84dbe649
Qt/GCMemcardManager: Don't bold the header
2019-03-30 20:22:04 +01:00
spycrab
0279d12055
Core/NetPlayServer: Integrate NetPlayIndex
2019-03-30 17:13:57 +01:00
spycrab
622ba68595
Core/Config: Add index entries to NetPlaySettings
2019-03-30 17:13:57 +01:00
spycrab
827e40d78a
UICommon: Add NetPlayIndex helper
2019-03-30 17:13:57 +01:00
spycrab
3dbf44417a
Common/HttpRequest: Implement EscapeComponent
2019-03-30 17:13:57 +01:00
JosJuice
c885fed9da
DiscIO: Make Korean GC checks in Enums.cpp less fragile
2019-03-30 12:45:28 +01:00
JosJuice
c028a84531
Volume: Add a GetCertificateChain function
2019-03-30 12:45:28 +01:00
JosJuice
abb3c5bccd
VolumeWad: Implement GetTicket
2019-03-30 12:45:17 +01:00
JosJuice
cf9ab6ddcc
DiscExtractor: Make P prefix for partition names optional
...
Also added constants for common partition types.
2019-03-30 12:45:17 +01:00
JosJuice
3014dadfa8
DiscIO: Add way of checking whether blob data size is accurate
2019-03-30 12:45:17 +01:00
JMC47
0bce1c509d
Merge pull request #7942 from jordan-woyak/gc-adapter-calib-fix
...
HW/SI: GCAdapter calibration fix.
2019-03-30 06:37:23 -04:00
Stenzek
3c455de799
FramebufferManager: Fix broken EFB peeks in GL with MSAA on
2019-03-30 03:14:29 +10:00
spycrab
963370d7e6
Merge pull request #7941 from 8times9/contextmenu
...
Qt/GameList: Set consistent capitalization for context menu
2019-03-29 21:09:49 +01:00
Jordan Woyak
4ee999723e
DolphinQt: Make MD5 result text box read only.
2019-03-29 12:31:09 -05:00
Stenzek
b685a66753
Vulkan: Fix crash when checking subgroup support on Mesa
2019-03-30 00:18:26 +10:00
Jordan Woyak
eadbdd6bc3
ControllerInterface/Win32: Prevent devcies from losing their "id" on a hotplug event.
2019-03-29 09:04:16 -05:00
Stenzek
a6bb06174f
Vulkan: Fix library load failure on Android
2019-03-29 23:36:53 +10:00
Michael M
d26c1ce24d
Add hotplug support to DInput and XInput controller backends
2019-03-29 08:01:40 -05:00
Michael M
92ca6e124e
Add ControllerInterface::Win32 to wrap XInput and DInput
2019-03-29 08:01:39 -05:00
Techjar
5d37b2b951
Qt/HacksWidget: Fix backend feature support checks
2019-03-29 08:45:21 -04:00
Jordan Woyak
a015851b02
HW/SI: GCAdapter calibration fix.
2019-03-29 06:15:58 -05:00
Stenzek
604ab67c7f
Vulkan: Simplify perf queries using vkGetQueryPoolResults
2019-03-29 20:54:44 +10:00
Stenzek
6d40ea8553
Vulkan: Fix barrier validation layer errors for bounding box
2019-03-29 20:54:44 +10:00
Stenzek
23a655217c
Vulkan: Fix validation layer error for unbound texture layouts
2019-03-29 20:54:44 +10:00
Stenzek
087b11e780
TextureCacheBase: Fix possible crash on shutdown with deferred EFB copies
2019-03-29 20:54:44 +10:00
Stenzek
427dd45151
Vulkan: Simplify command buffer fence tracking
2019-03-29 20:54:44 +10:00
Connor McLaughlin
f3fadd7302
Merge pull request #7869 from stenzek/d3dcommon
...
D3D: Move sharable D3D11/D3D12 code to common library
2019-03-29 20:40:06 +10:00
Connor McLaughlin
78cf615a9b
Merge pull request #7937 from Techjar/netplay-defer-efb-invalidation
...
NetPlay: Synchronize EFB access cache options
2019-03-29 20:31:15 +10:00
Stenzek
d66d778bae
PixelShaderGen: Use subgroup reduction operations for bounding box
2019-03-29 20:06:56 +10:00
Stenzek
6561850f2b
Vulkan: Support subgroup reduction operations via GL_KHR_shader_subgroup
2019-03-29 20:06:56 +10:00
Stenzek
86da282570
OGL: Support subgroup reduction operations via GL_NV_shader_thread_shuffle
2019-03-29 20:06:56 +10:00
Connor McLaughlin
1304e963ad
Merge pull request #7895 from stenzek/framebuffer-corruption
...
FramebufferManager: Don't discard in ReinterpretPixelData
2019-03-29 20:03:13 +10:00
Connor McLaughlin
154eeae8ae
Merge pull request #7915 from stenzek/bbox-scaled-update
...
VideoBackends: Scale bounding box rectangle in the pixel shader
2019-03-29 19:59:25 +10:00
Stenzek
d0d010f854
D3D11: Make stateman a unique_ptr
2019-03-29 19:55:00 +10:00
Stenzek
3b86c93285
VertexManagerBase: Increase vertex/uniform buffer sizes
...
ZTP was uploading 10MB+ of uniforms per frame, reducing paralellism by
forcing GPU waits.
2019-03-29 19:52:38 +10:00
Stenzek
2a4bca8b4a
VideoBackends: Verify validity before doing full renderer init
...
Prevents attempting to create invalid MSAA configurations, for example.
2019-03-29 19:52:38 +10:00
Stenzek
1151a1238f
D3D11: Use ComPtr smart pointer where possible
2019-03-29 19:52:38 +10:00
Stenzek
3d8014beb5
D3D11: Use D3DCommon where appropriate
2019-03-29 19:52:38 +10:00
Stenzek
ea15080d8f
Add D3DCommon (shared code between D3D11 and D3D12)
2019-03-29 19:52:38 +10:00
Stenzek
f6641b7e4f
Vulkan: Use Common::DynamicLibrary
2019-03-29 19:52:38 +10:00
Stenzek
a4f7c04470
Common: Add DynamicLibrary helper class
2019-03-29 19:52:33 +10:00
8times9
8c37214bee
Qt/GameList: Set consistent capitalization for context menu
2019-03-28 21:22:46 -05:00
Stenzek
e9cfcf4632
ShaderCache: Don't create invalid logic op pipelines
...
uint_output will never be set unless logic ops are enabled. Also clears
the bits so we're not compiling unused pixel shaders on the other
backends.
2019-03-28 20:35:02 +10:00
Stenzek
5732769a3c
ShaderCache: Set correct primitive in dummy ubershader pipelines
2019-03-28 20:35:02 +10:00
Stenzek
7dd9d74eec
RenderBase: Add EFBHasAlphaChannel() helper
2019-03-28 20:35:02 +10:00
Techjar
6e5d92e3c3
NetPlay: Synchronize EFB access cache options
2019-03-28 00:53:07 -04:00
spycrab
9b6c9252e4
Merge pull request #7932 from spycrab/qt_tas_fixes
...
Qt/TAS: Some fixes
2019-03-27 18:37:35 +01:00
JosJuice
6a18bf4d2e
Merge pull request #7935 from JosJuice/cli-arg-movie
...
DolphinQt: Add support for the --movie parameter
2019-03-27 18:34:24 +01:00
JMC47
b4b0ebae27
Merge pull request #7934 from stenzek/stretched-efb-peeks
...
FramebufferManager: Fix EFB peek cache stretching last tile
2019-03-27 10:53:47 -04:00
Stenzek
92fa6c34cd
FramebufferManager: Fix EFB pokes being offset by 1 in D3D
2019-03-27 23:28:34 +10:00
JosJuice
6451496776
DolphinQt: Add support for the --movie parameter
...
Regression from DolphinWX.
2019-03-27 14:26:17 +01:00
Stenzek
c28393d6f9
FramebufferManager: Fix EFB peek cache stretching last tile
2019-03-27 22:12:40 +10:00
JMC47
a1f53716dc
Merge pull request #7893 from jordan-woyak/mapping-ui-cleanup
...
DolphinQ: Mapping UI cleanups.
2019-03-26 20:30:30 -04:00
spycrab
e222b91953
Merge pull request #7929 from spycrab/np_chat_toggle
...
NetPlayChatUI: Add activate chat hotkey
2019-03-26 22:35:26 +01:00
spycrab
f7897778ff
NetPlayChatUI: Add activate chat hotkey
2019-03-26 18:13:32 +01:00
spycrab
4ad67f471c
Qt/TAS: Improve layout
2019-03-26 01:18:11 +01:00
spycrab
04583b17da
Qt/TAS: Fix issue #11620
2019-03-26 00:38:25 +01:00
JMC47
e636b3e712
Merge pull request #7871 from jordan-woyak/wm-real-cleanup
...
WiimoteReal: Improve state changes and code cleanups.
2019-03-25 19:28:22 -04:00
spycrab
fdb8b4af13
Qt/NetPlayDialog: Change buffer size message color
2019-03-25 10:09:21 +01:00
Stenzek
16294acd2a
VideoBackends: Scale bounding box rectangle in the pixel shader
2019-03-25 18:47:58 +10:00
Mat M
20999db93c
Merge pull request #7928 from JosJuice/ipl-hashes
...
Remove invalid IPL hashes (NTSC-U and NTSC-J use same IPL)
2019-03-24 14:12:17 -04:00
JosJuice
d42fa8f80e
Remove invalid IPL hashes (NTSC-U and NTSC-J use same IPL)
...
See https://bugs.dolphin-emu.org/issues/11467 . We now only have
the hashes that have been confirmed on Redump.
For the reference, MAME's list of bad GameCube IPL dumps:
80b2ca6088/src/mame/drivers/gamecube.cpp (L152-L158)
2019-03-24 14:19:23 +01:00
Stenzek
cff60f5ba0
FramebufferManager: Only clear tile array when valid
...
When looking into the Faron Woods fifolog, I noticed this code was quite
high in the profile (~10%). Clearing 4096 entries from the vector isn't
needed every draw, we only need to do this when the cache was actually
valid in the first place.
Should provide a slight general performance boost.
2019-03-24 15:03:04 +10:00
Jordan Woyak
d106169a83
DolphinQt: Fix unused widgets in InfoWidget from being visible.
2019-03-23 20:20:09 -05:00
spycrab
c89139d75d
Merge pull request #7903 from spycrab/imgui_np_chat
...
Add imgui-based Netplay Chat
2019-03-23 21:11:33 +01:00
spycrab
7cfb626a83
Add imgui-based Netplay Chat
2019-03-23 20:13:24 +01:00
spycrab
672b582bec
Merge pull request #7918 from spycrab/iokit_refactor
...
InputCommon/OSX: Refactor IOKit controller interface
2019-03-22 21:18:27 +01:00
JosJuice
0b3385ac1f
Merge pull request #7919 from JosJuice/disc-extractor-cert-h3
...
DiscExtractor: Fix extracting certificate chain and H3 hashes
2019-03-22 17:44:47 +01:00
spycrab
80fd01c3c3
InputCommon/OSX: Refactor IOKit controller interface
2019-03-22 14:04:30 +01:00
Tilka
0a1aacb5d0
Merge pull request #7906 from jordan-woyak/leak-fix
...
DolphinQt/InputCommon: Fix a few memory leaks.
2019-03-21 23:26:54 +00:00
Tilka
87cf94ec86
Merge pull request #7914 from stenzek/partial-update-infinite-loop
...
TextureCacheBase: Fix infinite loop in DoPartialTextureUpdates
2019-03-21 23:22:17 +00:00
Tilka
b016417106
Merge pull request #7907 from jordan-woyak/search-close-with-esc
...
DolphinQt: Make Ctrl+F show the game list search and escape close it.
2019-03-21 23:20:48 +00:00
spycrab
094c852158
Merge pull request #7916 from spycrab/issue_11623
...
MacUpdater: Fix updater not closing after update is completed
2019-03-21 23:42:06 +01:00
JosJuice
c558803cbd
DiscExtractor: Fix extracting certificate chain and H3 hashes
...
Dolphin is currently not using this data, but still,
the way it was being extracted was not at all correct.
2019-03-21 23:07:24 +01:00
Jordan Woyak
94c4975b5d
DolphinQt: Make Ctrl+F show the game list search and select the search text if already open. Escape closes.
2019-03-21 17:06:16 -05:00
spycrab
d1f7f0fcc0
Qt/AudioPane: Fix volume box not keeping consistent width
2019-03-21 14:38:12 +01:00
spycrab
544f6d547d
MacUpdater: Fix updater not closing after update is completed
2019-03-21 13:47:23 +01:00
spycrab
8cfbbbe9dc
VideoCommon/RenderBase: Disable backculling for ImGui
2019-03-21 13:16:21 +01:00
spycrab
61350b3d98
Core/Host: Allow frontends to block inputs
2019-03-21 13:16:21 +01:00
spycrab
0a3279ae6b
Fix ImGui key mapping Enter to the numpad
2019-03-21 13:16:21 +01:00
spycrab
fcd0dbef2c
Merge pull request #7901 from spycrab/issue_11585
...
Qt/Mapping: Use QGridLayout in a few more places
2019-03-20 23:53:01 +01:00
spycrab
e8b3c6cb3e
Qt/Mapping: Use QGridLayout in a few more places
2019-03-20 23:46:45 +01:00
Stenzek
bf0b52efc6
TextureCacheBase: Fix infinite loop in DoPartialTextureUpdates
2019-03-20 20:05:51 +10:00
Jordan Woyak
b53636827b
ControllerInterface: Unbreak DirectInput POV Hats having bad values on init.
2019-03-19 16:05:49 -05:00
LAGonauta
99a35568ca
Allow XAudio2 to be selected as a surround backend.
2019-03-18 09:21:40 -03:00
LAGonauta
f37ff190e4
Added DPL2 decoder to XAudio2 and XAudio2_7 backends.
2019-03-18 09:06:41 -03:00
Jordan Woyak
725d34b2f0
DolphinQt/InputCommon: Fix a few memory leaks.
2019-03-17 18:31:41 -05:00
Jordan Woyak
0bdfa19650
ControllerInterface: SDL: Replace unclear bool parameter with enum class.
2019-03-17 08:53:53 -05:00
Jordan Woyak
4fb68c530b
ControllerInterface: SDL cleanup and FF effect fixes.
2019-03-17 08:53:13 -05:00
spycrab
c4036d2d6a
Qt/MD5Dialog: Make dialog modal
2019-03-16 18:54:15 +01:00
JMC47
7acefe8a28
Merge pull request #7898 from spycrab/qt_netplay_empty_chat
...
Qt/NetPlayDialog: Prevent players from sending empty chat messages
2019-03-16 13:09:28 -04:00
spycrab
a40b5f9133
Merge pull request #7900 from spycrab/qt_general_align
...
Qt/GeneralPane: Align "Auto Update" on macOS
2019-03-16 17:57:23 +01:00
JMC47
ae533185c4
Merge pull request #7899 from spycrab/qt_netplay_bold
...
Qt/NetPlayDialog: Don't bold the player table headers
2019-03-16 12:12:30 -04:00
JMC47
2a9f01c1ba
Merge pull request #7897 from spycrab/qt_mapping_dialog
...
Qt/PadMappingDialog: Improve layout
2019-03-16 12:07:43 -04:00
spycrab
502cba255f
Qt/GeneralPane: Align "Auto Update" on macOS
2019-03-16 16:20:21 +01:00
spycrab
2046f93de8
Qt/NetPlayDialog: Don't bold the player table headers
2019-03-16 15:44:03 +01:00
spycrab
e64b6d27c8
Qt/NetPlayDialog: Prevent players from sending empty chat messages
2019-03-16 15:33:38 +01:00
spycrab
19dfd4d7ab
Qt/PadMappingDialog: Improve layout
2019-03-16 15:12:20 +01:00
JosJuice
08ca9ec21f
Merge pull request #7884 from JosJuice/save-movie-on-exit
...
DolphinQt: Save movie when closing emulation
2019-03-16 14:58:16 +01:00
Stenzek
8aa0ea10d9
FramebufferManager: Don't discard in ReinterpretPixelData
...
This was causing the depth buffer to be discarded as well, which
has an effect on mobiles (doesn't get loaded into tile memory).
If we find this is hindering performance (remember, the EFB is
only a 640x528 texture), it may be worth changing the interface to
support discarding only the colour buffer.
2019-03-16 23:45:08 +10:00
Jordan Woyak
9cb17b062c
DolphinQ: Mapping UI cleanups.
2019-03-15 18:32:25 -05:00
Connor McLaughlin
861fc42fc9
Merge pull request #7891 from kvark/vk-frame-view
...
[vk] Use proper view type of framebuffer images
2019-03-16 09:26:01 +10:00
JosJuice
c71216419b
Merge pull request #7874 from vadosnaprimer/ffv1_fix
...
FFV1 fix
2019-03-15 23:17:02 +01:00
Tilka
c57e5701cd
Merge pull request #7879 from spycrab/open_gc_save_folder
...
Qt/GameList: Implement 'Open gamecube save folder'
2019-03-15 18:25:19 +00:00
Dzmitry Malyshau
4173a8f545
Use proper view type of framebuffer images
2019-03-15 12:24:39 -04:00
spycrab
90522a7666
Qt/GameList: Implement 'Open gamecube save folder'
2019-03-15 14:22:54 +01:00
JMC47
011ecd92e8
Merge pull request #7829 from jordan-woyak/detect-input-improve
...
ControllerInterface/DolphinQt: Improve input detection.
2019-03-13 19:00:24 -04:00
JosJuice
bc9e9caf19
Merge pull request #7888 from lioncash/const
...
UICommon/ResourcePack: Mark ResourcePack's operator== as const
2019-03-13 21:41:07 +01:00
spycrab
635afc1db4
Merge pull request #7883 from spycrab/qt_no_dark_mode
...
Qt: Don't use 'Dark Mode'
2019-03-13 21:19:20 +01:00
Lioncash
6045b44203
UICommon/ResourcePack: Provide inequality operator to complement equality operator
...
Provides symmetrical behavior with the equality operator.
2019-03-13 15:55:20 -04:00
Lioncash
9d096a5e16
UICommon/ResourcePack: Mark ResourcePack's operator== as const
2019-03-13 15:53:30 -04:00
Lioncash
02da306d9a
DolphinQt/Debugger/RegisterColumn: Add HID registers to the register pane
...
Adds the Hardware Implementation-Dependent registers to the register
pane, which makes it much nicer to see which hardware-specific features
are enabled or disabled.
2019-03-13 15:45:28 -04:00
Tilka
7b354fa7ac
Merge pull request #7637 from CrystalGamma/pr-crhelpers
...
PowerPC: Factor out CR helpers into POD class
2019-03-13 18:12:52 +00:00
JosJuice
185b1cf90c
DolphinQt: Fix OnStopRecording/OnExportRecording logic
2019-03-13 17:35:20 +01:00
JosJuice
6c89957cf1
DolphinQt: Save movie when closing emulation
...
Missing feature from DolphinWX.
2019-03-13 15:40:36 +01:00
spycrab
339914f56d
Qt: Don't use 'Dark Mode'
2019-03-13 14:30:43 +01:00
Mat M
7944a055a6
Merge pull request #7876 from JosJuice/4-char-window-title
...
Fix title database not working when running games with 4-char game IDs
2019-03-12 05:17:33 -04:00
Stenzek
cce7ac43d4
FramebufferManager: Fix panic in VertexManager with large EFB depth poke batches
2019-03-12 18:26:07 +10:00
JosJuice
d879283e2d
Fix title database not working when running games with 4-char game IDs
...
Regression from 8842a0f
.
2019-03-12 08:42:05 +01:00
JMC47
22e7419747
Merge pull request #7838 from stenzek/efb-tile-cache
...
FramebufferManager: Implement EFB tile cache
2019-03-12 03:10:20 -04:00
Jordan Woyak
49218c32ed
WiimoteReal: Improve state changes and minor code cleanups.
2019-03-11 15:46:04 -05:00
feos
7fd940411b
decrease gop size (keyint)
...
this makes seeking a lot smoother (especially at high resolutions), while only adding less than 1% of filesize with this codec.
2019-03-11 22:17:13 +03:00
feos
005e60fa22
change pixel format from BGRA to BGR0
...
for this kind of footage carrying alpha information makes no sense, and it additionally complicates things by hugely damaging compatibility of the resulting video. after this change alone the video becomes compatible with VfW/WinAPI and tools that rely on it (avisynth, virtualdub).
fixes https://bugs.dolphin-emu.org/issues/11141 and https://bugs.dolphin-emu.org/issues/10193
2019-03-11 22:17:12 +03:00
spycrab
909e9322e7
Merge pull request #7875 from spycrab/qt_msgbox_fixes
...
ModalMessageBox: Remove superfluous buttons and ensure correct parent
2019-03-11 19:36:19 +01:00
spycrab
63fd931245
ModalMessageBox: Remove superfluous buttons and ensure correct parent
2019-03-11 18:24:59 +01:00
JMC47
9e4ab87a34
Merge pull request #7765 from AdmiralCurtiss/fzero-save-file-out-of-bounds
...
GCMemcard: Fix out of bounds access in F-Zero GX checksum calculation.
2019-03-11 12:40:03 -04:00
spycrab
8293724f4e
Merge pull request #7834 from Techjar/netplay-dialog-declutter
...
Qt/NetPlayDialog: Move most options into a menu bar
2019-03-11 17:27:55 +01:00
Jordan Woyak
224e678cf8
WiimoteEmu: Fix a config change callback causing a crash on exit.
2019-03-09 06:51:37 -06:00
Stenzek
9293c82b24
DolphinQt: Add option for deferred EFB cache invalidation
2019-03-09 12:36:32 +10:00
Stenzek
a218a794cb
FramebufferManager: Implement deferred EFB cache invalidation
2019-03-09 12:24:04 +10:00
Stenzek
6bc4bfd26a
FramebufferManager: Implement EFB tile cache
...
The new tile cache is dynamic in size and can be turned on/off.
2019-03-09 12:23:33 +10:00
Stenzek
65216c9e87
VideoConfig: Add SupportsPartialDepthCopies to backend info
...
D3D11 doesn't support partial copies of depth buffers via
CopySubResource(), so we need to use a different path for the EFB cache.
2019-03-09 12:19:53 +10:00
CrystalGamma
e3075f3834
PowerPC: Factor out CR helpers into POD class
2019-03-08 20:42:09 +01:00
Tillmann Karras
1790497789
Work around GCC 8.2 ICE
2019-03-08 09:47:06 +00:00
spycrab
db2542886a
Merge pull request #7844 from spycrab/updatecommon_electric_boogaloo
...
UpdaterCommon: Move most of the programs here
2019-03-07 19:09:35 +01:00
Connor McLaughlin
7d17163ce8
Merge pull request #7862 from spycrab/macos_vulkan_crash
...
VideoCommon/RenderBase: Don't destroy pipelines that are in use
2019-03-07 23:15:48 +10:00
spycrab
ae8412b901
Merge pull request #7858 from spycrab/more_padding
...
Qt: Increase padding a bit
2019-03-07 14:03:17 +01:00
spycrab
f72652f690
Revert "Vulkan: Show backend as Vulkan (MoltenVK) on macOS"
2019-03-07 02:05:59 +01:00
spycrab
9ca394bbea
VideoCommon/RenderBase: Don't destroy pipelines that are in use
2019-03-07 01:59:46 +01:00
spycrab
a5534ec950
Vulkan: Show backend as Vulkan (MoltenVK) on macOS
2019-03-06 15:25:54 +01:00
spycrab
f7e93a6556
Qt/ModalMessageBox: Use Warning instead of Critical icon for questions
2019-03-06 13:54:43 +01:00
spycrab
470b9e68e7
Qt: Increase padding a bit
2019-03-06 13:46:00 +01:00
Tilka
a865cc0bf6
Merge pull request #7806 from jordan-woyak/wiimote-emu-swing-improve
...
WiimoteEmu: Reimplement tilt/swing/camera/orientation data using matrix math.
2019-03-05 23:37:00 +00:00
Techjar
b65faa0549
Qt/NetPlayDialog: Move most options into a menu bar
...
This eliminates the clutter of checkboxes at the bottom of the window.
A QAction within a QMenu cannot have a tooltip however, so they have
been removed and the options will be documented on the wiki.
2019-03-05 05:56:22 -05:00
Mat M
5d7701dec2
Merge pull request #7856 from lioncash/unused
...
DolphinQt/MenuBar: Remove unused ModalMessageBox instance
2019-03-04 23:04:36 -05:00
Mat M
86fd8e25f7
Merge pull request #7854 from Techjar/ini-editor-menus
...
Qt/GameConfigEdit: Use QPushButton instead of QToolButton for presets menu
2019-03-04 22:29:16 -05:00
Lioncash
3e0854c4aa
DolphinQt/MenuBar: Remove unused ModalMessageBox instance
2019-03-04 20:16:45 -05:00
Techjar
86d036ec4b
Qt: Remove "What's this?" button from modal message boxes
2019-03-04 18:55:22 -05:00
Techjar
d44b1b563a
Qt/GameConfigEdit: Use QPushButton instead of QToolButton for presets menu
...
QToolButton looks ugly on macOS, and doesn't seem appropriate for this
use case anyways.
2019-03-04 18:39:25 -05:00
spycrab
70da86f1c3
Qt: Use ModalMessageBox everywhere
2019-03-04 21:53:02 +01:00
spycrab
d1cb79f644
QtUtils: Add ModalMessageBox
2019-03-04 21:48:23 +01:00
Connor McLaughlin
a59010fa29
Merge pull request #7851 from Tilka/efb_stats
...
VideoCommon: add EFB peek/poke stats
2019-03-04 15:28:22 +10:00
Tillmann Karras
05fa667d03
VideoCommon: add EFB peek/poke stats
2019-03-04 02:49:59 +00:00
Mat M
191ef76da2
Merge pull request #7775 from chargeflux/QComboBoxBGColorFix-macOS
...
Fix QComboBox background and transparency workaround on macOS
2019-03-03 20:52:32 -05:00
Jordan Woyak
c389d68186
ControllerInterface/DolphinQt: Make mapping "all devices" way less hacky.
2019-03-03 18:39:02 -06:00
Jordan Woyak
48b69ca018
ControllerInterface: Input detection improvements.
2019-03-03 18:36:16 -06:00
spycrab
13b2b93d3d
Merge pull request #7846 from spycrab/qt_no_ticks
...
Qt/MappingButton: Don't show ticks
2019-03-04 01:29:48 +01:00
Mat M
66a8220011
Merge pull request #7845 from jordan-woyak/elided-button-fix
...
DolphinQt: Fix ElidedButton (MappingButton) from growing with long text.
2019-03-03 18:53:01 -05:00
Mat M
503b96c617
Merge pull request #7848 from jordan-woyak/config-change-callbacks
...
Common/Config: Add a utility class to defer config change callbacks.
2019-03-03 18:44:34 -05:00
Jordan Woyak
1cae9b9b39
DolphinQt: Fix ElidedButton (MappingButton) from growing with long text.
2019-03-03 17:41:48 -06:00
Jordan Woyak
bbc6bf5294
Common/Config: Add a utility class to suppress config change callbacks.
2019-03-03 17:35:22 -06:00
Mat M
2eb9140e07
Merge pull request #7850 from jordan-woyak/device-and-profile-dropdown-fix
...
DolphinQt: Prevent contents of device and profile dropdowns from throwing off layout.
2019-03-03 18:33:16 -05:00
Jordan Woyak
031149cc1d
DolphinQt: Prevent contents of device and profile dropdowns from throwing off layout.
2019-03-03 16:09:24 -06:00
spycrab
2dcb703a1e
Merge pull request #7842 from spycrab/win_updater_hidpi
...
Updater: Support HiDPI
2019-03-03 22:46:19 +01:00
Jordan Woyak
4db4840d7c
WiimoteEmu: Reimplement tilt/swing/camera/orientation data using matrix math.
2019-03-03 12:43:25 -06:00
spycrab
0d203cf0bb
Qt/GCMemcardManager: Make message boxes modal
2019-03-03 16:36:58 +01:00
spycrab
326e2fb300
Qt/FIFOPlayerWindow: Make message box modal
2019-03-03 16:26:23 +01:00
spycrab
1ba810901d
Qt/MappingWindow: Make message boxes modal
2019-03-03 16:19:50 +01:00
spycrab
103cb430f4
Qt/ControllerWindow: Make message boxes modal
2019-03-03 16:16:25 +01:00
spycrab
7f9084f87f
Qt/USBDeviceATWhitelistD: Make message boxes modal
2019-03-03 16:12:12 +01:00
spycrab
606c61e7c9
Settings/InterfacePane: Make message box modal
2019-03-03 16:05:07 +01:00
spycrab
0c886b5e3c
Settings/GeneralPane: Make message boxes modal
2019-03-03 15:56:23 +01:00
spycrab
386accd2c8
Qt/MappingButton: Don't show ticks
2019-03-03 15:49:24 +01:00
spycrab
19bf2c166d
UpdaterCommon: Move most of the programs here
2019-03-03 15:02:44 +01:00
spycrab
2a3c075330
Merge pull request #7843 from spycrab/mac_update_label
...
MacUpdater: Properly display and truncate update messages
2019-03-03 13:30:43 +01:00
spycrab
833cb88c38
MacUpdater: Properly display and truncate update messages
2019-03-03 13:27:18 +01:00
spycrab
1e13ebd091
Updater: Support HiDPI
2019-03-03 12:56:26 +01:00
Mat M
8156df2758
Merge pull request #7837 from jordan-woyak/deadzone-math-fix
...
ControllerEmu: Deadzone math fix.
2019-03-03 02:32:04 -05:00
Mat M
7a8ddbaccb
Merge pull request #7840 from jordan-woyak/game-config-save-fix
...
DolphinQt: Fix invalid error message when trying to save a zero-sized game config.
2019-03-03 02:27:12 -05:00
Jordan Woyak
2cec5d0a08
DolphinQt: Fix invalid error message when trying to save a zero-sized game config.
2019-03-02 21:23:39 -06:00
Jordan Woyak
ecb67cf815
ControllerEmu: Deadzone math fix.
2019-03-01 17:40:10 -06:00
Tillmann Karras
24ba3bf2f2
TextureConversionShader: fix XFB decoding shader
2019-03-01 21:54:33 +00:00
spycrab
3c2ebec84e
Merge pull request #7828 from spycrab/updatecommon2
...
UpdaterCommon: Prevent duplicate downloads and respect symlinks
2019-02-28 13:04:15 +01:00
spycrab
7b66b3de8d
UpdaterCommon: Prevent duplicate downloads and respect symlinks
2019-02-28 12:59:38 +01:00
Tilka
6be35422e9
Merge pull request #7832 from stenzek/xfb-decoding-regression
...
TextureCache: Fix GPU decoding of XFB copies
2019-02-28 11:03:25 +00:00
Stenzek
8192c0dd48
TextureConversionShader: Fix XFB decoding shader for D3D
...
D3D has no mix() equivalent with a bool parameter. Compilers should be
able to optimize the ternary into a select anyway.
2019-02-28 20:43:50 +10:00
Stenzek
21d81f99ff
VideoBackends: Fix GPU decoding of XFB buffers
...
Was using UNORM instead of UINT, resulting in invalid values.
2019-02-28 20:35:22 +10:00
Stenzek
db6763019d
TextureCache: Fix GPU decoding of XFB copies not falling back to CPU
2019-02-28 20:19:37 +10:00
Stenzek
7f0111b022
TextureCache: Fix EFB2RAM copies at >1xIR sampling out-of-range
2019-02-28 20:11:46 +10:00
chargeflux
77777cd1d7
Fix QComboBox background and transparency workaround on macOS
2019-02-26 17:03:38 -05:00
spycrab
902e407ae5
Merge pull request #7823 from spycrab/updatercommon
...
Move shared Updater logic into UpdaterCommon
2019-02-26 22:15:42 +01:00
spycrab
f10fdce158
Merge pull request #7825 from spycrab/fileutil_osx_path
...
Common/FileUtil: Fix GetExePath() cutting off the bundle name
2019-02-26 21:56:27 +01:00
spycrab
873d22b8b2
Merge pull request #7826 from spycrab/issue_11586
...
MacUpdater: Set LSUIElement to true
2019-02-26 21:52:45 +01:00
spycrab
f0b749d8e2
MenuBar: Implement proper update-capabilities check
2019-02-26 20:42:55 +01:00
spycrab
d0d85c15b4
MacUpdater: Set LSUIElement to true
2019-02-26 20:26:52 +01:00
spycrab
3e3f6922c0
Common/FileUtil: Fix GetExePath() cutting off the bundle name
2019-02-26 20:00:23 +01:00
spycrab
9c84524684
Move shared Updater logic into UpdaterCommon
2019-02-26 19:27:36 +01:00
spycrab
0ebf3b90e3
MacUpdater: Fix permissions some more
2019-02-26 17:16:04 +01:00
Tilka
19f4772e47
Merge pull request #7816 from JosJuice/titledatabase-edge-cases
...
Fix edge cases in TitleDatabase, cover downloading, Gecko code downloading
2019-02-26 04:25:45 +00:00
Tilka
02f5a7505f
Merge pull request #7821 from jordan-woyak/emu-turntable-effect-dial-fix
...
WiimoteEmu: Fix turntable effect dial mapping.
2019-02-26 04:22:45 +00:00
Tilka
6ce7f44b8a
Merge pull request #7753 from stenzek/videocommon-all-the-things
...
Move a significant amount of video backend logic to VideoCommon
2019-02-26 04:21:05 +00:00
Jordan Woyak
4b830ddc26
WiimoteEmu: Fix turntable effect dial mapping.
2019-02-25 15:54:36 -06:00
Tillmann Karras
8396ad541b
DolphinQt: clean up includes
2019-02-25 20:15:12 +00:00
Tillmann Karras
8b330e1ca3
Discord: fix typo
2019-02-25 19:31:49 +00:00
JosJuice
71e6243c54
TitleDatabase: Don't hardcode HBC IDs that actually are in GameTDB
2019-02-25 19:55:49 +01:00
JosJuice
9df763b4ac
TitleDatabase: Don't merge multiple languages into same map
...
Instead of selecting languages based on the user config at the time
of TitleDatabase creation and merging the different languages into one
map for GC and one map for Wii, have one map for each language, and
have the caller supply the language they want. This makes us not need
the IsGCTitle function, which is inaccurate for IDs that start with D.
2019-02-25 19:55:46 +01:00
JosJuice
8842a0f402
Keep track of GameTDB ID separately from game ID
...
The difference between Dolphin's game IDs and GameTDB's game IDs
is that GameTDB uses four characters for non-disc titles, whereas
Dolphin uses six characters for all titles.
This fixes:
- TitleDatabase considering Datel discs to be NHL Hitz 2002
- Gecko code downloading not working for discs with IDs starting with P
- Cover downloading mixing up discs with channels (e.g. Mario Kart Wii
and Mario Kart Channel) and making extra HTTP requests. (Android was
actually doing a better job at this than DolphinQt!)
2019-02-25 19:54:25 +01:00
Mat M
d27036eb77
Merge pull request #7814 from JosJuice/overwrite-aspect-mode
...
VideoConfig: Don't overwrite aspect_mode with suggested_aspect_mode
2019-02-25 13:29:03 -05:00
Mat M
fad9c0cc93
Merge pull request #7813 from jordan-woyak/wiimote-emu-ir-enable-fix
...
WiimoteEmu: Minor IR Camera behavior fix.
2019-02-25 13:28:14 -05:00
spycrab
96786d0501
MacUpdater: Retain file permissions
2019-02-25 10:14:26 +01:00
Jordan Woyak
d64f29d234
WiimoteEmu: Minor IR Camera behavior accuracy fix.
2019-02-23 16:40:47 -06:00
Tilka
83ff3aa691
Merge pull request #7815 from JosJuice/elf-dol-size
...
Don't show asterisk next to DOL/ELF size in game list
2019-02-23 15:46:03 +00:00
JosJuice
5ace78bf20
Don't show asterisk next to DOL/ELF size in game list
2019-02-23 16:17:39 +01:00
JosJuice
ea7b96342b
VideoConfig: Don't overwrite aspect_mode with suggested_aspect_mode
...
Unnecessary since b93b7ec
. It was needed before that commit becase
RenderBase.cpp only was checking the value of aspect_mode, not
suggested_aspect_mode.
2019-02-23 16:00:18 +01:00
Jordan Woyak
58f1ff3773
WiimoteEmu: Minor accuracy fixes.
2019-02-20 17:44:55 -06:00
Stenzek
f039149198
Move most backend functionality to VideoCommon
2019-02-19 16:57:54 +10:00
Stenzek
933f3ba008
TextureCache: Don't copy out-of-range rectangles when stitching textures
...
This can cause driver crashes or GPU hangs if we do.
2019-02-17 16:35:43 +10:00
Stenzek
2165523fdc
TextureConverterShader: Write EFB2Tex XFB copies with alpha value of 1
...
This way we don't end up with artifacts of the EFB's alpha values in
frame dumps. XFB copies loaded from RAM also set the alpha to 1, so this
will match.
2019-02-17 16:35:43 +10:00
Stenzek
50bdcb8d9c
TextureCache: Bind textures/samplers after loading all textures
...
Since loading textures can result in rendering, e.g. partial copies, we
don't want to disturb partially-bound GX state.
2019-02-17 16:35:43 +10:00
Stenzek
eabde77892
CMake: Add an ENABLE_NOGUI option
2019-02-15 18:40:46 +10:00
Stenzek
836f76da89
DolphinNoGUI: Runtime selection of platform
2019-02-15 18:40:46 +10:00
Stenzek
f9869cb216
Vulkan: Support runtime selection of WSI
2019-02-15 18:40:46 +10:00
LAGonauta
c209d07c96
Removed FFDShow DPL2 decoder
2019-02-13 22:52:41 -02:00
LAGonauta
f4cf1e4f49
Removed zeroing-out the LFE as it is not needed anymore.
...
Also removed minimum number of frames needed when decoding DPL2, and use
std::numeric_limits to clamp the samples when needed.
Clamping is still needed, but those samples are much rarer now and depend
on the game.
2019-02-13 22:52:40 -02:00
LAGonauta
fdfd9d6953
Cleaned up PulseAudio as we now use FreeSurround
2019-02-13 22:52:40 -02:00
LAGonauta
df631f0d75
Swapped FFDShow's DPL2 decoder by FreeSurround
...
Added class in AudioCommon for the surround decoder
2019-02-13 22:52:40 -02:00
JosJuice
5067e96f37
Minor fixes to translatable strings
2019-02-13 18:54:45 +01:00
Tilka
131f4931fb
Merge pull request #7792 from jordan-woyak/auto-calibration
...
DolphinQt/ControllerEmu: Add stick calibration "wizard".
2019-02-13 02:13:27 +00:00
Tilka
8d59d1bb11
Merge pull request #7798 from ShFil119/impr/empty
...
Use empty instead of size
2019-02-13 01:59:43 +00:00
Filip Gawin
49fe9f5db1
Use empty instead of size
2019-02-13 00:03:49 +01:00
Mat M
6b22693e6e
Merge pull request #7796 from stenzek/glx-context
...
GLContext: Fix shared context creation error on Mesa
2019-02-11 09:23:52 -05:00
spycrab
eb11d045d7
Merge pull request #7790 from spycrab/rp_fixes
...
ResourcePacks: Fix various bugs
2019-02-11 11:09:43 +01:00
spycrab
f86b34ceb9
ResourcePacks: Fix various bugs
2019-02-11 11:05:35 +01:00
Tilka
4d85bb2d18
Merge pull request #7782 from jordan-woyak/wiimote-emu-speaker-pan
...
WiimoteEmu: Change speaker pan to use "constant power pan law".
2019-02-11 00:20:07 +00:00
Jordan Woyak
3c77b4aa4b
WiimoteEmu: Change speaker pan to use "constant power pan law" and change UI setting max value from 127 to 100.
2019-02-10 17:55:11 -06:00
Tilka
226affe00b
Merge pull request #7788 from jordan-woyak/mapping-ui-clear-button
...
DolphinQt: Make the mapping window clear button use ControllerEmu's clear functionality.
2019-02-10 23:29:33 +00:00
Tilka
33e51da3b8
Merge pull request #7785 from Tilka/patch_editor
...
DolphinQt: limit patch padding to 8
2019-02-10 23:22:20 +00:00
Jordan Woyak
0064f70c8a
DolphinQt/ControllerEmu: Replace Input Radius/Shape settings with an input calibration "wizard".
2019-02-10 07:55:47 -06:00
Stenzek
cecefa2d97
ChunkFile: Don't access element zero of empty container
...
This was causing assertion failures in debug MSVC builds.
2019-02-10 13:28:50 +10:00
Stenzek
ef3306e954
GLContext: Fix shared context creation error on Mesa
...
This was failing if the first version tried (4.6) didn't succeed.
2019-02-09 21:51:23 +10:00
spycrab
0abb1c6ea6
Qt/LogWidget: Make logging asynchronous
2019-02-08 13:21:21 +01:00
Anthony
2987e8313a
Merge pull request #7752 from 8times9/text-tweaks
...
Qt: Minor text tweaks
2019-02-07 10:21:00 -08:00
8times9
d45dad7bf7
Qt: Minor text tweaks
2019-02-07 11:53:07 -06:00
Jordan Woyak
64c3c52ef3
DolphinQt: Make the mapping window clear button use ControllerEmu's clear functionality.
2019-02-06 17:40:58 -06:00
spycrab
63cdebba88
UICommon/AutoUpdate: Add macOS support
2019-02-06 20:50:09 +01:00
spycrab
80f4181f60
MacUpdater: Initial implementation
2019-02-06 20:50:09 +01:00
spycrab
fa01db4904
Qt/GameConfigEdit: Fix some settings being in the wrong section
2019-02-06 09:42:33 +01:00
Tillmann Karras
03a7071c57
DolphinQt: limit patch padding to 8
2019-02-05 04:59:52 +00:00
Tillmann Karras
74c5e60327
DolphinQt: show game descriptions in one line
2019-02-03 22:32:36 +00:00
Anthony
f65b3a998c
Merge pull request #7739 from zackhow/multib
...
Android: Disable backend multithreading and add option to gfx menu
2019-02-03 12:44:00 -08:00
Anthony
e05cc3f61d
Merge pull request #7718 from cristian64/display_listcolumns_via_rightclick_on_header
...
Qt/MainWindow: Also display "List Columns" menu via right-click on table's header.
2019-02-03 12:41:39 -08:00
Anthony
227a26490d
Merge pull request #7773 from spycrab/rp_compression
...
ResourcePacks: Support compression
2019-02-03 12:34:11 -08:00
Anthony
eee24cd1ce
Merge pull request #7746 from Techjar/fix-hotkey-conflicts
...
[RFC] Core/HotkeyManager: Fix default hotkey conflicts
2019-02-03 12:26:14 -08:00
Tilka
8aaebfa2b3
Merge pull request #7716 from stenzek/stereo
...
Stereoscopy regression fixes
2019-02-03 19:57:01 +00:00
Anthony
4e825beddf
Merge pull request #7757 from jordan-woyak/wiimote-connection-status-checkmarks
...
WiimoteDevice: Update UI when wiimote connection status changes.
2019-02-03 10:28:08 -08:00
Anthony
e9130734af
Merge pull request #7688 from jordan-woyak/evdev-improve
...
ControllerInterface: evdev: Cleanups and effect processing fixes.
2019-02-03 10:25:23 -08:00
Jordan Woyak
69b617ce76
WiimoteEmu: Remove redundant Matrix library and use the one in Common.
2019-02-03 12:02:02 -06:00
Jordan Woyak
b9a00a40a9
Common: Move Matrix classes out of MathUtil into their own files and make their interface more friendly.
2019-02-03 11:35:31 -06:00
Jordan Woyak
9c1a8891e5
WiimoteEmu: Code cleanups.
2019-02-02 19:40:31 -06:00
Jordan Woyak
3945aa6242
WiimoteEmu: Fix battery level handling and remove old comments.
2019-02-02 19:40:31 -06:00
Jordan Woyak
6c0902ab0a
WiimoteEmu: Add logic for enabling/disabling M+ and force it disabled for now.
2019-02-02 19:40:31 -06:00
Jordan Woyak
0d1fbe7bbc
WiimoteEmu: Major renaming and cleanup.
2019-02-02 19:40:31 -06:00
Jordan Woyak
b1f350ab1c
WiimoteEmu: Cleanups, Kill some now-redundant constants.
2019-02-02 19:40:30 -06:00
Jordan Woyak
6e5847a790
WiimoteEmu: Fix wiimote pan setting from keeping center at half volume.
2019-02-02 19:40:30 -06:00
Jordan Woyak
d3906e548d
WiimoteEmu: Cleanup ack handling. Improve accuracy of report handling with unusual values. Eliminated outdated comments.
2019-02-02 19:40:30 -06:00
Jordan Woyak
3a889c35ad
WiimoteEmu: Cleanups, Kill more magic numbers and use some enum classes.
2019-02-02 19:40:30 -06:00
Jordan Woyak
86c94b8b22
WiimoteEmu: Motion plus now works half of the time in Wii Sports Resort.
2019-02-02 19:40:30 -06:00
Jordan Woyak
0b4329e077
Implement the rest of the wiimote input reports.
2019-02-02 19:40:30 -06:00
Jordan Woyak
10c2101e72
WiimoteReal: Unbreak.
2019-02-02 19:40:30 -06:00
Jordan Woyak
42b9392784
WiimoteEmu: Cleanups and work towards making motion plus functional.
2019-02-02 19:40:30 -06:00
Jordan Woyak
a25e8cb516
Advance save state version.
2019-02-02 19:40:30 -06:00
Jordan Woyak
a0721b256f
WiimoteEmu: Cleanup, kill some magic numbers, and unbreak wiimote speaker pan setting.
2019-02-02 19:39:29 -06:00
Jordan Woyak
372b12c67f
WiimoteEmu: Emulated motion plus is detected by game now.
2019-02-02 19:39:29 -06:00
Jordan Woyak
ba936923bd
WiimoteEmu: Tweak the i2c bus code to better support motion plus and its passthrough port.
2019-02-02 19:39:29 -06:00
Jordan Woyak
84d32f6645
WiimoteEmu: Fix usage of ReportFeatures in TAS related code.
2019-02-02 19:39:29 -06:00
Jordan Woyak
4dc0aa6f8e
WiimoteEmu: Process wiimote read data requests like they are on a real wiimote. It's not a queue. New requests are ignored and input is suppressed while processing a request. This simplifies the save state code greatly.
2019-02-02 19:39:29 -06:00
Jordan Woyak
ec460da36d
WiimoteEmu: Add wiimote speaker logic to i2c bus. Temporarily break the "pan" setting.
2019-02-02 19:39:29 -06:00
Jordan Woyak
62b66580c3
WiimoteEmu: Unbreak wiimote extensions.
2019-02-02 19:39:29 -06:00
Jordan Woyak
ebc2e58fa4
WiimoteEmu: Partially emulate i2c bus to more closely simulate the real thing. Transfer most of IR camera logic to the i2c bus. Temporarily break everything else.
2019-02-02 19:39:29 -06:00
Jordan Woyak
6c40c47472
WiimoteEmu: Remove some remnants of hybrid wiimote.
2019-02-02 19:39:28 -06:00
Tilka
a95b6e1b9b
Merge pull request #7735 from spycrab/qt_modal
...
Qt: Make more messages modal
2019-02-03 01:30:03 +00:00
Tilka
cfbc852fb0
Merge pull request #7777 from jordan-woyak/input-rounding
...
ControllerEmu: Round input floats instead of casting.
2019-02-03 00:56:05 +00:00
Tilka
6ec11c6801
Merge pull request #7742 from jordan-woyak/si-device-change-fix
...
SI: Device change logic fix.
2019-02-03 00:52:23 +00:00
Jordan Woyak
3bc4968c11
ControllerEmu: Round input floats instead of casting to prevent almost-neutral values from being rounded down.
2019-02-02 15:12:07 -06:00
spycrab
b6863ff0a2
ResourcePacks: Support compression
2019-02-02 15:54:06 +01:00
Tilka
28c0b5338e
Merge pull request #7738 from spycrab/core_warnings
...
Core: Fix some warnings
2019-02-02 14:13:21 +00:00
Tilka
d55e276d0b
Merge pull request #7763 from jordan-woyak/steering-wheel-ff-fix
...
HW: SI_Device_GCSteeringWheel: Fix handling of force commands.
2019-02-02 13:12:51 +00:00
Tilka
2d75797c63
Merge pull request #7747 from stenzek/vulkan-shutdown
...
Vulkan: Shutdown fixes and cleanup/refactoring
2019-02-02 12:45:20 +00:00
Tilka
6dc16dda26
Merge pull request #7750 from jordan-woyak/gamelist-less-padding
...
DolphinQt: Reduce the padding between gamelist items.
2019-02-02 12:41:06 +00:00
Tilka
eb7135ac9b
Merge pull request #7771 from stenzek/qt-non-looping-fifoplayer
...
DolphinQt: Connect Host::RequestStop() to MainWindow::RequestStop()
2019-02-02 12:28:55 +00:00
Tilka
0115906e41
Merge pull request #7767 from Tilka/chunkfile
...
ChunkFile: treat vectors/strings as sized arrays
2019-02-02 12:25:42 +00:00
Stenzek
31a5dd15a9
DolphinQt: Connect Host::RequestStop() to MainWindow::RequestStop()
...
The fact that this wasn't connected was causing fifoplayer to hang if
looping was disabled.
2019-02-02 13:36:46 +10:00
Admiral H. Curtiss
fdd19c1b54
GCMemcard: Fix out of bounds access in F-Zero GX checksum calculation.
2019-02-01 17:50:19 +01:00
Tillmann Karras
4090c19e00
GeckoCodeConfig: fix Gecko Code downloading
...
For some reason the server always redirects once to the same location.
2019-02-01 13:44:58 +00:00
Tillmann Karras
3ff0e7dbd4
Common/HttpRequest: optionally follow redirects
2019-02-01 13:44:58 +00:00
Jordan Woyak
552392e4f6
HW: SI_Device_GCSteeringWheel: Fix handling of force commands.
2019-02-01 06:47:17 -06:00
Jordan Woyak
b0cb100958
SI: Device change logic fix.
2019-02-01 06:43:24 -06:00
Tillmann Karras
04a92482bf
ChunkFile: treat vectors/strings as sized arrays
2019-02-01 05:13:16 +00:00
JMC47
a129d60a57
Merge pull request #7762 from jordan-woyak/gcadapter-calibration
...
HW: SI_Device_GCAdapter: Restore calibration behavior for real gamecube controllers.
2019-01-31 23:47:09 -05:00
Tillmann Karras
45aeb86766
Fix -Wmissing-declarations warning
2019-02-01 03:06:01 +00:00
Mat M
e5ca338958
Merge pull request #7761 from jordan-woyak/gccontroller-minor-cleanup
...
HW: SI_Device_GCController: Minor cleanup.
2019-01-31 21:29:55 -05:00
Tillmann Karras
5b4a5ca059
DolphinQt: cache filesystem icons for speed
2019-02-01 00:15:52 +00:00
JosJuice
c1492aeb45
Merge pull request #7744 from stenzek/vsync
...
Renderer: Fix throttle-disable (TAB) hotkey when vsync is enabled
2019-01-31 22:44:10 +01:00
Jordan Woyak
cb9896618f
HW: SI_Device_GCAdapter: Restore calibration behavior for real gamecube controllers.
2019-01-31 08:38:25 -06:00
Jordan Woyak
c54cc3fa38
HW: SI_Device_GCController: Minor cleanup. Remove a member/state variable that should just be a local variable.
2019-01-31 06:30:06 -06:00
JosJuice
419ba925b7
Merge pull request #7748 from jordan-woyak/compressed-game-indicator
...
DolphinQt: Display game list compressed file sizes with an asterisk.
2019-01-30 19:47:47 +01:00
JosJuice
9340ddc7c9
Merge pull request #7726 from zackhow/rumfast
...
Android: Optimize rumble call
2019-01-30 19:37:24 +01:00
Jordan Woyak
159d2b1cc3
HW/Wiimote: Don't reconnect wiimotes on ChangeWiimoteSource when the source hasn't actually changed.
2019-01-29 10:01:35 -06:00
Jordan Woyak
4bc576472c
WiimoteDevice: Update UI when wiimote connection status changes to keep check marks in the menu bar accurate.
2019-01-29 07:57:51 -06:00
JMC47
0e1669e1c7
Merge pull request #7728 from jordan-woyak/pad-perfect-calib
...
SI_DeviceGCController: Calibrate to perfect neutral instead of initial input state.
2019-01-28 21:11:46 -05:00
JMC47
cf8da56297
Merge pull request #7751 from zackhow/motefix
...
Android: Don't grab wiimote report if size is < 1
2019-01-28 19:53:04 -05:00
Jordan Woyak
efd5c36773
DolphinQt: Display game list file sizes with an asterisk when file-size differs from volume-size (e.g. when they are compressed).
2019-01-28 14:44:25 -06:00
JMC47
7907633126
Merge pull request #7715 from Techjar/qt-delete-unparented
...
Qt/MainWindow: Directly delete unparented dialogs
2019-01-28 06:42:07 -05:00
zackhow
831ab64e1c
Android: Don't grab wiimote report if size is < 1
...
Fixes crash when using official wiimotes with the dolphin bar.
2019-01-27 16:43:19 -05:00
Jordan Woyak
3db904baba
DolphinQt: Reduce the padding between gamelist items.
2019-01-27 14:00:22 -06:00
Jordan Woyak
c386a6a875
DolphinQt: Fix selection of PP shader when using anaglyph 3D.
2019-01-27 13:23:42 -06:00
Techjar
d70ea9e4ec
Core/HotkeyManager: Fix default hotkey conflicts
2019-01-27 06:20:01 -05:00
Stenzek
3b033bf3f0
Vulkan: Move clear shader from Renderer to ShaderCache
2019-01-27 13:07:35 +10:00
Stenzek
e2cf238ec4
Vulkan: Move swapchain related members from Renderer to SwapChain
2019-01-27 12:59:57 +10:00
Stenzek
bd66db049a
Vulkan: Use device-local functions where possible
...
Avoids a call into the loader library, which may improve performance
ever-so-slightly.
2019-01-27 12:51:04 +10:00
Stenzek
ce1cc2d9fa
Vulkan: Don't execute command buffer before shutting down
...
We don't need to, and this was causing occasional crashes on Adreno.
2019-01-27 12:41:10 +10:00
Stenzek
b01df8670f
Renderer: Fix throttle-disable (TAB) hotkey when vsync is enabled
2019-01-27 12:31:12 +10:00
zackhow
4979220cf0
Android: Optimize rumble call
...
Moved rumble call to IDCache since GetMethodID is expensive
2019-01-26 09:38:35 -05:00
Techjar
408029e8a3
Qt/MainWindow: Don't unpause after confirming shutdown
...
There's no good reason to do this, as it just causes running signals to
be sent as the core is shutting down.
2019-01-26 07:27:37 -05:00
zackhow
8a1eb34c38
Android: Default backendMultithreading to false on android
2019-01-25 19:22:07 -05:00
spycrab
51a219c54d
Merge pull request #7263 from spycrab/qt_ini_edit
...
Qt/GameConfigWidget: Complete overhaul
2019-01-26 00:45:46 +01:00
spycrab
ff5556ce2f
Qt/GameConfigWidget: Complete overhaul
2019-01-26 00:41:22 +01:00
JosJuice
b14e540671
Merge pull request #7736 from stenzek/imgui-hidpi
...
RenderWidget: Fix mouse position for imgui on hidpi screens
2019-01-25 22:45:31 +01:00
spycrab
0691971d82
Core: Fix some warnings
2019-01-25 21:21:22 +01:00
spycrab
f908612452
DolphinQt: Fix some warnings
2019-01-25 17:21:38 +01:00
Stenzek
3d8145af65
RenderWidget: Fix mouse position for imgui on hidpi screens
2019-01-26 01:31:58 +10:00
spycrab
787f2c6bd7
Qt: Make more messages modal
2019-01-25 16:16:27 +01:00
spycrab
6962d5bc52
Merge pull request #7478 from stenzek/imgui
...
Replace raster font with dear imgui
2019-01-25 15:08:40 +01:00
Stenzek
774480ba23
Vulkan: Set contents scale of Metal layer to screen factor
...
This gives us a native resolution framebuffer.
2019-01-26 00:02:04 +10:00
JMC47
e060b133e3
Merge pull request #7722 from 0xFEEDC0DE64/gamecube-settings-improvements
...
General GameCubePane improvements
2019-01-25 05:40:07 -05:00
Stenzek
ee0fa548bc
Vulkan: Don't bind last descriptor set if bounding box is unsupported
...
Fixes crash on a4xx/Vulkan.
2019-01-25 11:15:57 +10:00
Stenzek
e9b02e7dd0
Vulkan: Remove unused UpdateUtilityUniformBuffer function
2019-01-25 11:15:57 +10:00
Stenzek
78588ce79d
ShaderCache: Use imgui for shader compilation dialog
2019-01-25 11:15:57 +10:00
Stenzek
e4b205c769
Decouple XFB scanout from presentation
2019-01-25 11:15:57 +10:00
Stenzek
f1e7fb505b
Renderer: Scale all imgui fonts by the backbuffer scale
2019-01-25 11:15:57 +10:00
Stenzek
c9c0b85056
VideoBackends: Store a backbuffer 'scale'
...
This is a scaling factor, used for hi-dpi configurations.
2019-01-25 11:15:57 +10:00
Stenzek
e03b8e899e
Vulkan: Move texture upload buffer to ObjectCache
2019-01-25 11:15:57 +10:00
Stenzek
36ce47635b
RenderWidget: Hook up to ImGui
2019-01-25 11:15:57 +10:00
Stenzek
63dd91628d
Remove old RasterFont classes
2019-01-25 11:15:57 +10:00
Stenzek
600d1fc0bc
Renderer: Use imgui for drawing debug text and OSD
2019-01-25 11:15:57 +10:00
Stenzek
d1868d9475
RenderBase: Implement imgui rendering
2019-01-25 11:10:49 +10:00
Stenzek
396b7c2978
OGL: Invalidate tracked state when calling ResetAPIState()
...
Due to the current design, any of the GL state can be mutated after
calling this function, so we can't assume that the tracked state will
match if we call SetPipeline() after ResetAPIState().
2019-01-25 11:10:49 +10:00
Connor McLaughlin
224b23b979
Merge pull request #7729 from stenzek/adreno-sillyness
...
ShaderGen: Fix broken rendering on Adreno Vulkan drivers
2019-01-25 11:07:12 +10:00
JMC47
ddb1fbf701
Merge pull request #7500 from zackhow/pointer
...
Android: Add IR pointer control to touch overlay
2019-01-24 20:02:23 -05:00
0xFEEDC0DE64
e1fdf4ae9a
General GameCubePane improvements (squashed commit)
2019-01-24 21:08:21 +01:00
Stenzek
1d61041985
ShaderGen: Don't use interface blocks on Vulkan without GS
...
Doing so causes the Adreno driver to choke and spew errors about
too many output locations/components, when clearly we're under
the limit.
2019-01-24 17:02:17 +10:00
zackhow
d0b42286cf
Load custom game IR values if they are not set
...
This is mostly for android so that a user can use the touchscreen to
accurately emulate pointer movements
2019-01-23 17:16:32 -05:00
Stenzek
68cb24172b
ShaderGen: Omit some unused varyings when possible
...
Removes the clipPos varying unless slow-depth is used, and the
clipDistance varyings if geometry shaders are not used.
2019-01-23 18:34:22 +10:00
Jordan Woyak
3cd3e84486
SI_DeviceGCController: Calibrate pad origin on boot to perfect neutral values instead of initial input state.
2019-01-22 15:33:04 -06:00
Christian Aguilera
9a1a98a9f6
Qt/MainWindow: Also display "List Columns" menu via right-click on table's header.
2019-01-21 21:06:04 +00:00
Cody Wilson
00f786384d
Update GeckoCodes code download to use https
...
The WiiRD codes respository at https://geckocodes.org has started using HTTPS, and 301 Redirecting traffic from HTTP to HTTPS. The HTTP client does not appear to be able to handle a 301 Redirect and instead fails when attempting to download codes. This pull request is purely a string replacement to set the URL as HTTPS.
2019-01-20 11:26:29 -05:00
zackhow
47d6406fd4
Android: Add touch to move pointer in overlay
2019-01-19 23:21:33 -05:00
Stenzek
1070192165
TextureCache: Fix a possible crash when partial updating palette textures
2019-01-19 23:38:02 +10:00
Stenzek
84bcbef944
TextureCache: Don't partial copy to non-existant texture layers
2019-01-19 23:38:00 +10:00
Stenzek
ade255a5ff
TextureCache: Fix broken XFB stitching with stereoscopy is enabled
2019-01-19 23:23:21 +10:00
Stenzek
6bfe4c83a5
OGL: Fix broken stereoscopy geometry shader for EFB copies
2019-01-19 23:22:57 +10:00
Techjar
47cc5b02e3
Qt/MainWindow: Directly delete unparented dialogs
...
Calling deleteLater in MainWindow's destructor doesn't work, as the
event loop will stop before it gets around to deleting these dialogs.
Seeing as this is a QObject destructor, we should already be on the
event loop anyways, so simply using delete should be safe.
2019-01-19 04:37:07 -05:00
Jordan Woyak
6cc8775510
ControllerInterface: evdev: Replace unclear bool parameter with enum class.
2019-01-17 12:10:50 -06:00
Jordan Woyak
52aa39991c
ControllerInterface: evdev: Cleanup rumble effect processing so effects aren't removed and re-uploaded with every SetState() call. Split the "LeftRight" output into separate "Strong" and "Weak" outputs. Other minor cleanups.
2019-01-17 12:10:50 -06:00
Léo Lam
3627ef8a04
Merge pull request #7696 from TryTwo/Debugger_Restore_Tabbed_Docking
...
Qt/Debugger restore tabbed docking
2019-01-17 13:40:02 +01:00
Léo Lam
c7373701cc
Merge pull request #7580 from Techjar/netplay-padmapping-type
...
NetPlay: Remove PadMapping type
2019-01-16 21:57:38 +01:00
Léo Lam
fd3ef7ebc5
Merge pull request #7616 from AdmiralCurtiss/memcard-cleanup
...
Clean up GCMemcard a bit.
2019-01-16 21:56:40 +01:00
Léo Lam
e19ee2ad4f
Merge pull request #7664 from jordan-woyak/kill-button-threshold
...
ControllerEmu: Killed the button group threshold setting.
2019-01-16 21:33:05 +01:00
Léo Lam
3892c3ac48
Merge pull request #7690 from NarryG/dragload-savestate
...
Reimplement savestate loading via drag and drop (resubmission of #7425 )
2019-01-16 21:32:44 +01:00
Dan B
d69740c8b4
Reimplement savestate loading via drag and drop
2019-01-16 21:19:31 +01:00
Léo Lam
a8bc6f9899
Merge pull request #7693 from jordan-woyak/hotplug-callback-fix
...
ControllerInterface: Hotplug callback fixes.
2019-01-16 21:00:48 +01:00
Léo Lam
b2de98cad1
Merge pull request #7680 from jordan-woyak/dinput-axis-range
...
DirectInput: Use more than 8 bits of precision on axis inputs.
2019-01-16 18:52:11 +01:00
Léo Lam
634ef78a26
Merge pull request #7705 from cristian64/master
...
Fixed crash when dereferencing the potential null pointer returned by GetSelectedGame().
2019-01-16 18:51:11 +01:00
Léo Lam
c785ccba27
Merge pull request #7712 from linkmauve/gcadapter-flatten
...
Flatten a GCAdapter function
2019-01-16 18:48:15 +01:00
Emmanuel Gil Peyrot
fb6fae2b2b
Flatten GCAdapter function
...
Make CheckDeviceAccess() more flat by inverting checks, reducing
indentation and removing dead code.
2019-01-16 14:20:00 +01:00
Christian Aguilera
ee5e2fd9f9
Fixed crash when dereferencing the potential null pointer returned by GetSelectedGame().
2019-01-16 09:25:47 +00:00
Connor McLaughlin
5962316068
Merge pull request #7643 from weihuoya/texture-overlap
...
Texture: fx overlap src position
2019-01-16 08:49:36 +10:00
JMC47
1d3e3de44b
Merge pull request #7629 from JosJuice/auto-disc-change
...
Automatic disc change for 2-disc games
2019-01-15 13:01:36 -05:00
TryTwo
b557faa386
Debugger restore tabbed docking
2019-01-11 14:32:27 -07:00
Jordan Woyak
b425f86121
ControllerInterface: Allow hotplug callbacks to be unregistered and don't reload the entire config from the ini file on hotplug, just update the control references. This should fix a crash on shutdown on Android.
2019-01-10 18:32:16 -06:00
JMC47
012338288e
Merge pull request #7662 from jordan-woyak/mapping-indicators-make-pretty
...
ControllerEmu: Make mapping indicators pretty
2019-01-10 19:04:27 -05:00
zackhow
078fc74b54
Android/OGL: fix bounding box for OpenGL-ES
...
OpenGL-ES does not have glGetBufferSubData, so use glMapBufferRange instead
2019-01-09 21:08:49 -05:00
JosJuice
d3e1d2ea00
Merge pull request #7666 from jordan-woyak/input-shutdown-fix
...
ControllerInterface: Shutdown order and race condition fix.
2019-01-08 14:39:47 +01:00
JosJuice
b30a338dd6
Merge pull request #7683 from zackhow/removefullanalog
...
Android: Change all AnalogInputs to just inputs
2019-01-08 14:01:26 +01:00
Connor McLaughlin
0da5929226
Merge pull request #7626 from weihuoya/vulkan-oom
...
Always clean cache on render swap
2019-01-08 21:57:25 +10:00
weihuoya
66a7db3850
Always flush on swap
2019-01-08 18:28:59 +08:00
zackhow
02c649ba20
Android: Change all analoginputs to just inputs
...
Android doesn't report values for the inputs generated by FullAnalogInput so
there isn't a reason to add them as such. This also avoids a bug(for android)
where if there are three inputs(say 12, 11, and 121), and you generate a FullAnalogInput
with 12/11 then it will create another input with the name 121 which can cause conficts
with the real 121 input. This is probably not an issue on PC since most Axis inputs
are named and not numbered.
2019-01-07 21:52:39 -05:00
JMC47
3397824601
Merge pull request #7588 from Techjar/controller-dialog-wiimote-disabled-bug
...
Qt/ControllersWindow: Fix Wiimote settings not being re-enabled after quitting NetPlay
2019-01-07 16:55:36 -05:00
Anthony
3da06970d9
Merge pull request #7605 from zackhow/jitarmconfigs
...
Android: Add Jit debug options to menu.
2019-01-07 13:50:57 -08:00
Anthony
c73adf8d8e
Merge pull request #7656 from JMC47/DanceMatFix
...
Fix Emulated Dance Mat
2019-01-07 13:48:50 -08:00
Jordan Woyak
a7c45fb49e
DirectInput: Use more than 8 bits of precision on axis inputs.
2019-01-06 08:14:37 -06:00
Admiral H. Curtiss
04bcc64e82
GCMemcard: Update formatting of memcard field comments in header.
2019-01-06 14:40:38 +01:00
Admiral H. Curtiss
e6acbf7cbe
GCMemcard: 'Broken File000' commented out code can't work anymore, but leave a comment about it.
2019-01-06 14:18:00 +01:00
Admiral H. Curtiss
41767daabc
GCMemcard: Remove obsolete commented out code, this is handled via InitActiveDirBat() and related.
2019-01-06 14:12:59 +01:00
Admiral H. Curtiss
111f0b38e0
GCMemcard: Update panic alerts and comments to refer to 1st/2nd dir/BAT blocks.
2019-01-06 14:12:59 +01:00
JMC47
0ca9accd8b
Merge pull request #7640 from jordan-woyak/input-fixes
...
ControllerInterface: Output/Rumble fixes
2019-01-05 17:16:35 -05:00
JMC47
d75e9b2d5d
Merge pull request #7677 from Techjar/netplay-peer-init-fix
...
NetPlay: Fix server peer initialization hang
2019-01-05 15:10:39 -05:00
Jordan Woyak
a995e2f5ba
ControllerInterface: Set DInput FF effect parameters sanely. This fixes a crash with periodic effects and my GCPad adapter (probably a divide by zero behind the scenes).
2019-01-05 13:00:04 -06:00
JMC47
1cd5debecf
Merge pull request #7585 from Techjar/netplay-wiimote-extension
...
NetPlay: Sync Wiimote extension
2019-01-05 05:57:36 -05:00
JosJuice
0c622929ba
Add M3U file support for automatic disc switching
2019-01-04 09:24:42 +01:00
JosJuice
352ac91a1c
Add a delay before automatically switching discs
...
Some games don't behave as expected if we eject the disc as soon as
we receive the DVDLowStopMotor command. For instance, Baten Kaitos
never shows the prompt to switch discs or the "Reading disc..." text
(but works correctly other than that).
2019-01-04 09:24:41 +01:00
JosJuice
b608e80d8e
Don't do automatic disc switching when running e.g. the Wii Menu
...
We only want automatic disc switching to happen when the game actually
is running, but software like the Wii Menu also uses DVDLowStopMotor.
2019-01-04 09:24:41 +01:00
JosJuice
bd665aad5d
Automatic disc change for 2-disc games
2019-01-04 09:24:38 +01:00
Mat M
931af76da3
Merge pull request #7668 from spycrab/rpack_fix
...
UICommon/ResourcePack: Fix packs without manifests crashing Dolphin
2019-01-03 13:59:07 -05:00
JosJuice
a8e5f2b922
Merge pull request #7230 from ligfx/remove_clamp_draw_size
...
RenderBase: don't clamp draw size to window
2019-01-03 18:26:41 +01:00
spycrab
c2c23677ed
UICommon/ResourcePack: Fix resource packs without manifests being able to crash dolphin
2019-01-02 22:47:18 +01:00
Jordan Woyak
25d43ffd98
ControllerInterface: Shutdown order and race condition fix.
2019-01-02 08:19:42 -06:00
Jordan Woyak
88e588673b
Qt Game List: Sort game titles "naturally". e.g. 10 comes after 9.
2019-01-01 06:06:02 -06:00
Jordan Woyak
df43fd9472
ControllerEmu: Killed the Buttons group threshold setting.
2018-12-31 08:35:31 -06:00
Jordan Woyak
7efa96eda9
ControllerEmu: code cleanup.
2018-12-30 10:52:45 -06:00
Jordan Woyak
1c24bef594
MappingUI: Organize some color constants and hide IR adjusted Z value when cursor is hidden.
2018-12-30 09:50:22 -06:00
Jordan Woyak
7a00f55cfa
ControllerEmu::Cursor: Add input radius/shape settings to IR Cursor mappings to allow use of round inputs in absolute mode. Make relative input option obey the center/width/height settings. Make the mapping indicator pretty and actually show what the relative/center/w/h settings are doing.
2018-12-30 09:10:32 -06:00
Jordan Woyak
247fa8c628
WiimoteEmu: Remove redundant threshold setting from hotkeys button group.
2018-12-29 16:19:28 -06:00
Jordan Woyak
c3dc3c106c
ControllerEmu: Reorganize stick reshaping code and use it for emu wiimote tilt as well. Also make the tilt mapping indicator pretty.
2018-12-29 16:06:03 -06:00
Jordan Woyak
6a6195f53c
ControllerEmu: Implement dead zone setting for triggers.
2018-12-29 13:56:35 -06:00
Jordan Woyak
def5c6e573
Mapping UI: Reorganize wiimote extension layouts a bit so things fit better.
2018-12-29 12:59:47 -06:00
Jordan Woyak
970073084a
Mapping UI: Make the mixed trigger indicator styling match that of the analog sticks.
2018-12-29 12:46:05 -06:00
spycrab
75b8824c95
Merge pull request #7658 from spycrab/debugger_show
...
Qt/Debugger: Add Show in Code / Show in Memory
2018-12-29 15:08:51 +01:00
JMC47
f8586bb83c
Fix Emulated Dance Mat
...
I have no idea how it got so broken, but this makes it so both the
Active Life and DDR Mario/Wii games can be fully configured.
2018-12-28 17:47:49 -05:00
Jordan Woyak
2765475e7b
HW: DK Bongos actual fix
2018-12-28 15:15:29 -06:00
spycrab
3e3f9565ec
Qt/Debugger: Add Show in Code / Show in Memory
2018-12-28 20:30:38 +01:00
Mat M
dd1fc70d70
Merge pull request #7644 from jordan-woyak/dk-bongos-fix
...
HW: DK Bongos clap fix and cleanup
2018-12-28 06:41:10 -05:00
Mat M
2d379446b5
Merge pull request #7642 from MerryMage/fprf-whole
...
EmuCodeBlock: Fix bug in SetFPRF: Should only consider lower double
2018-12-28 06:37:43 -05:00
Mat M
b7db1f020b
Merge pull request #7624 from lioncash/paired-single
...
PowerPC: Remove separate macros for paired singles
2018-12-28 06:32:45 -05:00
Mat M
8c9f553734
Merge pull request #7620 from lioncash/paired
...
Interpreter: Handle HID2.PSE and HID2.LSQE bits
2018-12-28 06:30:37 -05:00
Mat M
b37455ef46
Merge pull request #7652 from JMC47/NetplayWarning
...
Update Netplay Main Page Notices
2018-12-28 06:22:56 -05:00
Mat M
2749c50843
Merge pull request #7653 from jordan-woyak/ini-cleanup
...
IniFile: Minor cleanup. Removed unused function. Improved template usage.
2018-12-28 06:21:24 -05:00
Mat M
de03019c77
Merge pull request #7628 from jordan-woyak/stick-shapes
...
ControllerEmu: Add ability to reshape analog sticks. Make the mapping indicator pretty.
2018-12-28 06:18:56 -05:00
MerryMage
77e9aa48bc
Jit64: Remove Jitx86Base class
2018-12-28 09:15:26 +00:00
Jordan Woyak
c614f5f534
ControllerEmu: Allow analog stick input radius greater than one. Useful for rounded-square inputs of xbox controllers.
2018-12-27 19:16:37 -06:00
Jordan Woyak
da9bcf83ef
InputCommon: Simplified StickGate interface and moved class into its own file. Changed default input radius to perform no resizing. Tweaked the indicator colors a bit to improve visibility. Cleaned up some math and code.
2018-12-27 18:31:46 -06:00
Jordan Woyak
ceb28a2302
Add ability to reshape analog sticks from square/circle to octagon and make the analog stick mapping indicator pretty.
2018-12-27 18:31:46 -06:00
Tilka
bfb9b1aca5
Merge pull request #7602 from CrystalGamma/stop-g_jit
...
stop using g_jit outside of JitInterface
2018-12-27 23:12:14 +01:00
Tilka
89eedc8c1b
Merge pull request #7625 from jordan-woyak/emu-shake-fix
...
WiimoteEmu: Shaking emulation fix
2018-12-27 22:32:50 +01:00
MerryMage
26bc38d25d
Jit64: Fix instruction breakpoints
...
Broken by 5236dc3
.
2018-12-27 20:11:26 +00:00
Jordan Woyak
a464025bba
IniFile: Minor cleanup. Removed unused function. Improved template usage.
2018-12-26 20:15:32 -06:00
JMC47
e6b859a923
Update Netplay Main Page Warnings
...
We now support automatically syncing most things. Add Dual Core Netplay
Warning. Update Wii Remote Netplay string since it now kinda works.
2018-12-26 14:23:43 -05:00
Mat M
bd527e62ef
Merge pull request #7647 from MerryMage/emit-singles
...
x64Emitter: Add some single-precision instructions
2018-12-26 09:33:06 -05:00
JosJuice
5b97ea8b40
Merge pull request #7606 from booto/dtk_pos_align
...
DTK: Report position in increments of 0x8000
2018-12-26 10:22:40 +01:00
MerryMage
da7608ff9f
x64Emitter: Add some single-precision instructions
2018-12-26 00:23:42 +00:00
JosJuice
2ff1bfdc85
Merge pull request #7646 from leoetlino/temporary-to-permanent
...
WiiUtils: Clear IPL.TID when re-installing a title manually
2018-12-25 23:46:47 +01:00
Léo Lam
0aef6bc834
WiiUtils: Clear IPL.TID when re-installing a title manually
...
If the user tries to permanently install a title that has already been
imported, and if that title is currently marked as a temporary title
in IPL.TID, that flag should be cleared.
2018-12-25 20:49:11 +01:00
Jordan Woyak
43f5d4973e
Fix wiimote/nunchuk acceleration value clamping (off-by-one).
...
Add in shaking acceleration rather than overwritting it so it doesn't look like the device is in free-fall. This fixes shaking in "Batman: TBATB". It appears the game only detects shaking along the z-axis and expects gravity to exist.
2018-12-25 12:10:31 -06:00
Jordan Woyak
56256d8624
HW: DK Bongos clap fix and cleanup
2018-12-25 11:24:09 -06:00
Lioncash
244d083f0e
PowerPC: Remove separate macros for paired singles
...
Previously, PowerPC.h had four macros in it like so:
\#define rPS0(i) (*(double*)(&PowerPC::ppcState.ps[i][0]))
\#define rPS1(i) (*(double*)(&PowerPC::ppcState.ps[i][1]))
\#define riPS0(i) (*(u64*)(&PowerPC::ppcState.ps[i][0]))
\#define riPS1(i) (*(u64*)(&PowerPC::ppcState.ps[i][1]))
Casting between object representations like this is undefined behavior.
Given this is used heavily with the interpreter (that is, the most
accurate, but slowest CPU backend), we don't exactly want to allow
undefined behavior to creep into it.
Instead, this adds a helper struct for operating with the paired singles,
and replaces the four macros with a single macro for accessing the
paired-singles/floating-point registers.
This way, it's left up to the caller to explicitly decide how it wants to interpret
the data (and makes it more obvious where different interpretations of
the same data are occurring at, as there'll be a call to one of the
[x]AsDouble() functions).
2018-12-25 10:35:09 -05:00
JosJuice
ca2a2c98f2
Merge pull request #7627 from Techjar/netplay-disable-bt-passthrough
...
Core/BootManager: Disable bluetooth passthrough when booting NetPlay
2018-12-25 15:48:08 +01:00
JosJuice
08ae6d7706
Merge pull request #7525 from JosJuice/nand-title-region
...
Accurate region detection for NAND titles
2018-12-25 15:36:00 +01:00
weihuoya
184b2edc30
fx texture overlap
2018-12-25 21:24:25 +08:00
Jordan Woyak
0f19c4a40f
ControllerInterface: DInput: Update force feedback effects in a thread. This should prevent slowdowns experienced by a handful of users.
2018-12-24 19:40:58 -06:00
MerryMage
0deed2a5af
EmuCodeBlock: Fix bug in SetFPRF: Should only consider lower double
2018-12-24 19:02:43 +00:00
Markus Wick
e7b53540d8
Merge pull request #7634 from MerryMage/downcount-on-exit
...
Jit64: Check downcount at block exit, not block entry
2018-12-23 19:34:12 +01:00
MerryMage
5236dc31a6
Jit64: Check downcount at block exit, not block entry
2018-12-23 18:03:29 +00:00
Markus Wick
54f37c3bae
Merge pull request #7631 from MerryMage/crXXX-AeqB
...
Jit_SystemRegisters: Special-case crXXX for CRBA == CRBB
2018-12-23 17:55:09 +01:00
spycrab
fc998093cc
Merge pull request #7600 from spycrab/resource_pack
...
Implement resource packs
2018-12-23 16:04:05 +01:00
Jordan Woyak
d5df56c677
ControllerInterface: Make CoalesceExpression not set the inactive child's value (rumble) to 0. This caused rumble to not enable when a control expression was both a valid "bareword" and "complex" expression.
2018-12-22 11:17:05 -06:00
Jordan Woyak
a8d0afe219
Reduce input mapping detection time to 3 seconds because 5 seconds was ridciculously long and output (rumble) testing time to 2 seconds because 5 seconds was annoyingly long.
2018-12-22 10:58:34 -06:00
degasus
64378c90da
JitArm64: Fix RC calculation of srawix.
...
Seems like it was missed from the early implementation.
2018-12-22 17:31:14 +01:00
Jordan Woyak
3a145aeae4
ResetRumble on emu pause/stop regardless of presence of DInput/Xinput as that's not relevant. All the backends would like to stop rumbling.
2018-12-22 07:31:36 -06:00
zackhow
233b00fb7e
ConfigManager: add save/load for Jit debug options
2018-12-21 15:06:37 -05:00
MerryMage
174d2b0230
crXXX: Avoid loading twice when CRBA == CRBB
2018-12-21 11:33:18 +00:00
MerryMage
07c146e7e2
crXXX: Remove unnecessary CRBA == CRBD constraint for crclr and crset
2018-12-21 11:20:06 +00:00
spycrab
71d53c922f
Implement resource packs
2018-12-19 11:03:09 +01:00
Techjar
cf8b730c61
Core/BootManager: Disable bluetooth passthrough when booting NetPlay
...
Bluetooth passthrough does not and never will work on NetPlay, so we'll
just force the use of emulated bluetooth when booting in NetPlay.
2018-12-17 18:22:13 -05:00
Jordan Woyak
79eb065cf3
Reduce emulated shaking frequency to 6hz. (something more humanly possible) (was ~13hz)
2018-12-15 10:36:22 -06:00
Jordan Woyak
a8a6bdcdd2
Compute emulated classic controller calibration data instead of having hardcoded values.
2018-12-15 10:27:06 -06:00
Jordan Woyak
6848812a31
Produce emulated nunchuk calibration data.
2018-12-15 10:27:06 -06:00
CrystalGamma
2f490e44fb
stop using g_jit outside of JitInterface
...
Replace g_jit in x86-64 ASM routines code by m_jit member reference
2018-12-15 01:58:58 +01:00
Lioncash
6d394d03fe
Common/GLContext: Make member functions const qualified where applicable
...
These don't modify object state, so they can be const qualified.
2018-12-14 11:02:26 -05:00
Lioncash
52cae18b01
Interpreter: Handle paired-single HID2.PSE and HID2.LSQE bits
...
These bits enable or disable paired-single execution based on how
they're set. If PSE isn't set, then all paired-single instructions are
illegal. If PSE is set, but LSQE isn't set, then psq_l, psq_lu, psq_st
and psq_stu are illegal to execute.
Also thanks go out to my roommate @Veegie for letting me use his Wii as
a blasting ground for tests, since mine isn't on hand right now. It only
caught on fire twice and only burned down half of the house through the
process; what a team player.
2018-12-13 22:48:05 -05:00
Lioncash
c87a2f57b4
Interpreter_SystemRegisters: Handle reserved/read-only bits for HID2 in mtspr
2018-12-13 11:39:40 -05:00
Admiral H. Curtiss
fa6782f841
GCMemcard: Required declaration before C++17.
2018-12-10 20:24:20 +01:00
Admiral H. Curtiss
36d84c6959
GCMemcard: Slightly nicer definition of UNINITIALIZED_GAMECODE.
2018-12-10 20:24:20 +01:00
Admiral H. Curtiss
ca2c7679df
GCMemcard: Rewrite DEntry_IconFmt() and DEntry_AnimSpeed() to make more sense.
2018-12-10 20:24:20 +01:00
Admiral H. Curtiss
2351a60567
GCMemcard: Let GetDEntry() return std::optional<DEntry>.
2018-12-10 20:24:20 +01:00
Admiral H. Curtiss
860e003b0c
GCMemcard: Remove needless second definition of DENTRY_SIZE.
2018-12-09 22:28:58 +01:00
Admiral H. Curtiss
3d77a43e67
GCMemcard: Use std::array for GCMBlock.m_block.
2018-12-09 22:28:58 +01:00
Admiral H. Curtiss
ceb9cb53c6
GCMemcard: Rename GCMBlock.block to m_block to match naming conventions.
2018-12-09 22:28:58 +01:00
Admiral H. Curtiss
fc70b60d8b
GCMemcard: Access active directory/BAT via methods instead of pointers.
2018-12-09 22:28:58 +01:00
Admiral H. Curtiss
7ff65db3b2
GCMemcard: As far as I can tell, the directory and BAT blocks aren't really main and backup, but just two blocks that store data are written to alternately. So store them as an std::array of 2 blocks instead of an explicit 'backup' block.
2018-12-09 22:28:58 +01:00
Admiral H. Curtiss
0aaf24b9cc
GCMemcard: Rename GCMemcard variables to match our naming conventions.
2018-12-09 22:28:58 +01:00
Admiral H. Curtiss
4d4b5442bd
GCMemcard: Use std::array and BigEndianValue for BlockAlloc.m_map.
2018-12-09 22:28:57 +01:00
Admiral H. Curtiss
eb6cc3dbab
GCMemcard: Use BigEndianValue for BlockAlloc.m_last_allocated_block.
2018-12-09 22:28:57 +01:00
Admiral H. Curtiss
d3b61c3ff0
GCMemcard: Use BigEndianValue for BlockAlloc.m_free_blocks.
2018-12-09 22:28:57 +01:00
Admiral H. Curtiss
88bdab6fe6
GCMemcard: Use BigEndianValue for BlockAlloc.m_update_counter.
2018-12-09 22:28:57 +01:00
Admiral H. Curtiss
0f776fb091
GCMemcard: Use BigEndianValue for Directory.m_update_counter.
2018-12-09 22:28:57 +01:00
Admiral H. Curtiss
2d77096d63
GCMemcard: Use std::array for Directory's members.
2018-12-09 22:28:57 +01:00
Admiral H. Curtiss
f8488f4561
GCMemcard: Use std::array for DEntry.m_unused_2.
2018-12-09 22:28:57 +01:00
Admiral H. Curtiss
4175fdf28d
GCMemcard: Use std::array for DEntry.m_makercode.
2018-12-09 22:28:57 +01:00