Commit graph

39123 commits

Author SHA1 Message Date
Admiral H. Curtiss
8f91cb62e6
Merge pull request #11426 from shuffle2/stdfs
fileutil: use std::filesystem
2023-02-14 00:50:34 +01:00
JosJuice
9d139ea84e
Merge pull request #11561 from AdmiralCurtiss/hle-execute-fix
JIT: Fix calls to HLE::Execute.
2023-02-13 12:09:36 +01:00
Admiral H. Curtiss
e1dbea3658
JIT: Fix calls to HLE::Execute.
This got broken in 7cecb28bdf.
2023-02-13 11:47:47 +01:00
Scott Mansell
05181f6b88 HookableEvent: Switch to construct on first use
A registration might happen during static initialization, which opens
us up to issues with ordering of static initialization.
2023-02-13 18:48:43 +13:00
Scott Mansell
1fc5d37fd2
Merge pull request #11558 from Pokechu22/vertex-loader-size-assertion-details
VertexLoader: Add more info to m_vertex_size == m_src_ofs assertion
2023-02-13 17:34:04 +13:00
Pokechu22
cc411c4e41 VertexLoader: Add more info to m_vertex_size == m_src_ofs assertion 2023-02-12 20:10:38 -08:00
Pokechu22
14c4f4e7f6 PPCCache: Update PLRU on any cache access
The previous code only updated the PLRU on cache misses, which made it so that the least recently inserted cache block was evicted, instead of the least recently used/hit one.

This regressed in 9d39647f9e (part of #11183, but it was fine in e97d380437), although beforehand it was only implemented for the instruction cache, and the instruction cache hit extremely infrequently when the JIT or cached interpreter is in use, which generally keeps it from behaving correctly (the pure interpreter behaves correctly with it).

I'm not aware of any games that are affected by this, though I did not do extensive testing.
2023-02-12 19:59:19 -08:00
Scott Mansell
a4729a026f
Merge pull request #11554 from JosJuice/host-lock-cpu
DolphinQt: Properly lock CPU before accessing emulated memory
2023-02-13 16:08:36 +13:00
Scott Mansell
f37113204f
Merge pull request #11550 from iwubcode/set_common_samplers_count
VideoCommon: add constant value for maximum number of pixel samplers
2023-02-13 16:05:51 +13:00
Scott Mansell
2c24d07837
Merge pull request #11538 from t895/disc-speed-stuff
Rename "Speed up Disc Transfer Rate" to "Emulate Disc Speed"
2023-02-13 15:46:56 +13:00
Charles Lombardo
0ed64b080f Rename Fast Disc Speed to Emulate Disc Speed and invert option 2023-02-12 16:20:38 -05:00
Charles Lombardo
d0941342d2 Android: Expose Emulate Disc Speed 2023-02-12 16:20:38 -05:00
Admiral H. Curtiss
5ef014e55a
Merge pull request #11556 from AdmiralCurtiss/plain-file-s64
DiscIO/FileBlob: Make m_size unsigned.
2023-02-12 21:22:56 +01:00
Admiral H. Curtiss
300d63b492
DiscIO/FileBlob: Make m_size unsigned. 2023-02-12 20:51:08 +01:00
JosJuice
611e721a4d Jit64: Properly handle backpatching overflowed address calculations
Previously we would only backpatch overflowed address calculations
if the overflow was 0x1000 or less. Now we can handle the full 2 GiB
of overflow in both directions.

I'm also making equivalent changes to JitArm64's code. This isn't because
it needs it – JitArm64 address calculations should never overflow – but
because I wanted to get rid of the 0x100001000 inherited from Jit64 that
makes even less sense for JitArm64 than for Jit64.
2023-02-12 20:48:27 +01:00
Admiral H. Curtiss
9737345a9e
Merge pull request #11493 from icup321/master
GameINI: Heavy Iron updates
2023-02-12 19:34:12 +01:00
icup321
70a5895a42
GameINI: Heavy Iron updates 2023-02-12 19:19:13 +01:00
JosJuice
f3ee167a3c
Merge pull request #11536 from JosJuice/transifex-migrate
Update Transifex config for new client
2023-02-12 19:07:10 +01:00
Admiral H. Curtiss
c3dee1f11c
Merge pull request #11499 from iwubcode/graphics-mod-pass-base-path
VideoCommon: allow graphics mods to have access to the file path where the config exists to load additional files
2023-02-12 19:04:59 +01:00
Silent
9f3d3e2b9c
Address WIL todos in UICommon.cpp 2023-02-12 15:05:54 +01:00
JosJuice
6f0266e8de DolphinQt: Only update call stack if paused
This avoids a pseudo infinite loop where CodeWidget::UpdateCallstack
would lock the CPU in order to read the call stack, causing the CPU to
call Host_UpdateDisasmDialog because it's transitioning from running to
pausing, causing Host::UpdateDisasmDialog to be emitted, causing
CodeWidget::Update to be called, once again causing
CodeWidget::UpdateCallstack to be called, repeating the cycle.

Dolphin didn't go completely unresponsive during this, because
Host_UpdateDisasmDialog schedules the emitting of Host::UpdateDisasmDialog
to happen on another thread without blocking, but it was stopping certain
operations like exiting emulation from working.
2023-02-12 12:50:28 +01:00
JosJuice
7cecb28bdf DolphinQt: Properly lock CPU before accessing emulated memory
This fixes a problem I was having where using frame advance with the
debugger open would frequently cause panic alerts about invalid addresses
due to the CPU thread changing MSR.DR while the host thread was trying
to access memory.

To aid in tracking down all the places where we weren't properly locking
the CPU, I've created a new type (in Core.h) that you have to pass as a
reference or pointer to functions that require running as the CPU thread.
2023-02-12 11:27:50 +01:00
JMC47
efed037c4a
Merge pull request #11553 from MayImilae/rename-viskip-to-vbiskip
Rename VI Skip to VBI Skip
2023-02-12 00:31:28 -05:00
MayImilae
508c79a66f Rename VI Skip to VBI Skip
VI Skip was very hard to explain on the blog, so this small changes
clarifies what VI Skip is to resolve that issue.
2023-02-11 20:28:41 -08:00
iwubcode
20dc4401c5 VideoCommon: pass a graphics mod base path to the graphics mod, so it can lookup other relative files if necessary 2023-02-11 00:21:40 -06:00
Admiral H. Curtiss
fbb3db71b2
Merge pull request #11526 from AdmiralCurtiss/netplay-crash
ENetUtil: Add check for valid socket in SendPacket().
2023-02-10 21:24:04 +01:00
Admiral H. Curtiss
2f6e7d497d
ENetUtil: Add check for valid socket in SendPacket(). 2023-02-10 19:32:40 +01:00
Admiral H. Curtiss
9b5c52ad8d
Merge pull request #11541 from Pokechu22/dsptool-no-redefine-label
DSPTool: Fix missing error when redefining labels
2023-02-10 11:02:36 +01:00
Admiral H. Curtiss
3c2933cad2
Merge pull request #11549 from Pokechu22/texturecachebase-bitset-include
TextureCacheBase: Remove unused bitset include
2023-02-10 10:55:07 +01:00
JMC47
258151fe5a
Merge pull request #11523 from degasus/OGL_KHR_subgroup
VideoBackend/OGL: Prefer KHR_shader_subgroup over NV_shader_thread.
2023-02-10 04:47:20 -05:00
Scott Mansell
dad7a32a35
Merge pull request #11534 from Pokechu22/warning-fixes-feb-2023
Resolve various compiler warnings
2023-02-10 21:21:15 +13:00
iwubcode
af313f8419 VideoCommon: add constant value to set the allowed maximum number of pixel samplers 2023-02-10 00:46:11 -06:00
Pokechu22
3024ca2146 Suppress memcpy writing to an object with no trivial copy-assignment warnings
We need to copy padding in most of these cases, and the objects are trivially copyable; however, BitField prevents trivial copy-assignment.
2023-02-09 16:23:49 -08:00
Pokechu22
ac7a17579e BreakPoints: Fix shadowing warning 2023-02-09 16:23:02 -08:00
Pokechu22
3bd655463d MemoryViewWidget: Fix warning: enumeration value ‘Null’ not handled in switch [-Wswitch] 2023-02-09 16:23:02 -08:00
Pokechu22
5c8d8383e2 CodeWidget: Fix shadowing warning 2023-02-09 16:23:02 -08:00
Pokechu22
470115fd4f TextureDecoder: Fix warning: array subscript has type ‘char’ [-Wchar-subscripts] 2023-02-09 16:23:02 -08:00
Pokechu22
debed35c10 State: Fix shadowing warnings 2023-02-09 16:23:02 -08:00
Pokechu22
9559c45cae CommandProcessor: Fix shadowing warnings 2023-02-09 16:23:02 -08:00
Pokechu22
f1b1f5c013 IOS: Fix shadowing warnings 2023-02-09 16:23:02 -08:00
Pokechu22
8d71f542cb Boot: Fix shadowing warning 2023-02-09 16:23:02 -08:00
Pokechu22
39c5d55f03 VertexLoaderBase: Fix shadowing warning 2023-02-09 16:23:02 -08:00
Pokechu22
95bee485c9 GraphicsModManager: Fix shadowing warning 2023-02-09 16:23:02 -08:00
Pokechu22
7fafb00561 InputCommon/XInput2: Fix shadowing warning 2023-02-09 16:23:02 -08:00
Pokechu22
edcc4a6578 AudioInterface: Fix warning: declaration of ‘state’ shadows a previous local 2023-02-09 16:23:02 -08:00
Pokechu22
8ad7d58303 DSP: Fix warning: declaration of ‘state’ shadows a previous local 2023-02-09 16:23:02 -08:00
Pokechu22
24df509447 DVDInterface: Fix warning: declaration of ‘state’ shadows a previous local 2023-02-09 16:23:02 -08:00
Pokechu22
9c52c600c4 EXI_DeviceEthernet: Fix warning: operation on ‘current_rwp’ may be undefined [-Wsequence-point] 2023-02-09 16:23:01 -08:00
Pokechu22
1465620721 GCMemcardDirectory: Fix variable shadowing warning 2023-02-09 16:23:01 -08:00
Pokechu22
c555a4f0c6 SerialInterface: Fix warning: declaration of ‘state’ shadows a previous local 2023-02-09 16:23:01 -08:00