30589 Commits

Author SHA1 Message Date
Lioncash
75840f62ff MMU: Make use of UReg_SDR1 in SDRUpdated()
Lets us simplify SDRUpdated() a little bit.

This also fixes the layout of UReg_SDR1. Turns out this struct has been
incorrect (from a little-endian perspective) the entire time and went
unnoticed, since the union was never used.
2021-08-31 10:20:56 -04:00
Lioncash
1c776d8c1a MMU: Move invalidation logic into the TLBEntry struct
Puts the invalidation logic in one place and lets us tidy up
InvalidateTLBEntry a little.
2021-08-31 10:04:44 -04:00
Lioncash
3216040bfe MMU: Remove implicit sign conversions and truncation in UpdateTLBEntry
These are trivial to resolve.

Converting the structure member into a u32 results in no increase in
structure size, as it's making use of the three extra padding bits in
the structure.
2021-08-31 10:00:18 -04:00
Lioncash
c008b1c335 MMU: Move UPTE1/UPTE2 unions into Gekko.h
Keeps the register definitions in one spot and lets us remove a comment
about them.
2021-08-31 09:45:28 -04:00
Lioncash
65e131ef5f MMU: Convert PTE unions over to Common::BitField 2021-08-31 09:36:13 -04:00
Léo Lam
c5becb4a7e
Merge pull request #10040 from JosJuice/simplify-mcrfs
Interpreter: Simplify mcrfs implementation
2021-08-31 15:31:54 +02:00
JosJuice
e376a985e4 Revert "DolphinQt: Minor consistency fixes for the Settings window"
This reverts commit 9d45bac17538bf0e64cfad025bd82109c971f9d6.
2021-08-31 09:15:03 +02:00
Tillmann Karras
72ca41b9bf DSPInterpreter: fix off-by-one errors in cycle counting 2021-08-31 01:51:42 +01:00
Léo Lam
8ecb0447b6
Merge pull request #10025 from mbc07/gui-fixes-settings
DolphinQt: Minor consistency fixes for the Settings window
2021-08-31 01:43:02 +02:00
Léo Lam
48339afb98
Merge pull request #10041 from lioncash/conv
Interpreter: Make signedness and narrowing conversions explicit
2021-08-31 01:07:27 +02:00
Léo Lam
95fcedeef3
Merge pull request #10053 from lioncash/kdreq
IOS/Network/KD: Minor tidy-up changes
2021-08-31 00:45:17 +02:00
Léo Lam
1fa74ab824
Merge pull request #10058 from AdmiralCurtiss/dsp-cleanup
DSPHLE: Minor cleanup & savestate fix for AX coefficients.
2021-08-31 00:16:54 +02:00
Admiral H. Curtiss
f592565532 DSPHLE/AX: Reload resampling coefficients on savestate load if necessary. 2021-08-30 23:36:09 +02:00
Léo Lam
271612f328
Merge pull request #10064 from lioncash/regs
Gekko: Migrate register structs over to Common::BitField
2021-08-30 23:19:17 +02:00
Léo Lam
d7109b149b
Merge pull request #10066 from leoetlino/abort-on-panic-alert-option
Add an option to abort when a panic alert occurs
2021-08-30 22:43:21 +02:00
Léo Lam
6659f8019e
Merge pull request #10035 from JosJuice/jitarm64-dcbx-in-loop
JitArm64: dcbx loop detection for improved performance when invalidating large memory regions
2021-08-30 22:39:20 +02:00
iwubcode
1f2f505373 VideoBackends / VideoCommon: allow the ability to set debug names for shaders / textures. These names are visible in applications like RenderDoc 2021-08-30 13:47:48 -05:00
JosJuice
9b83cf3e7f
Merge pull request #10069 from leoetlino/clang-format-12
Update clang-format to version 12
2021-08-30 09:13:15 +02:00
Léo Lam
815b590dfe
Update clang-format to version 12
12 is the latest release and various editors (VS, VSCode and CLion)
ship with clang-format 12 by default.
2021-08-30 00:20:18 +02:00
Léo Lam
86f2c7889d
Merge pull request #8932 from sepalani/cw-map
PPCSymbolDB: Improve symbol map column detection
2021-08-29 23:28:09 +02:00
Léo Lam
ef98f209a2
IOS: Add missing writes of low MEM1 constants
On a real Wii, these constants are normally written by the system menu
(maybe even as part of common SDK code?)

However, they're cleared by IOS whenever a PPC title is launched.
IOS memsets 0x0-0x3fff and then manually writes some constants
in low MEM1. PR #4723 added most of the writes in the 0x31xx region
but left out the four writes to the legacy constant region.

Previously Dolphin didn't actually clear 0-0x3fff so those constants
would stick around after a system menu execution.
011f7789e0 exposed those missing writes.
2021-08-29 22:51:44 +02:00
Lioncash
dbf8e27d7f Gekko: Convert UReg_PTE over to using Common::BitField 2021-08-29 06:16:55 -04:00
Lioncash
e4e1b6064d Gekko: Convert UReg_THRM3 over to using Common::BitField 2021-08-29 06:16:55 -04:00
Lioncash
11e76e1f67 Gekko: Convert UReg_THRM12 over to using Common::BitField 2021-08-29 06:16:55 -04:00
Lioncash
12b87922fb Gekko: Convert UReg_BAT_Lo over to using Common::BitField 2021-08-29 06:16:54 -04:00
Lioncash
b4496e6653 Gekko: Convert UReg_BAT_Up over to using Common::BitField 2021-08-29 06:16:51 -04:00
JMC47
006fc99e8e
Merge pull request #8901 from sepalani/dns-async
IOS/Network: Make name resolution asynchronous
2021-08-29 05:12:13 -04:00
Léo Lam
e091c2e817
Add an option to abort when a panic alert occurs
Prompted by https://dolphin.ci/#/builders/24/builds/985

A 1-character typo in a recent PR caused FifoCI builds to break
horribly and spew millions of panic alerts until buildbot crashed.

This PR adds a new config option -- defaulting to off -- that allows
Dolphin to abort early on when a panic alert occurs instead of
continuing forever.
2021-08-29 02:02:07 +02:00
Mateus B. Cassiano
9d45bac175 DolphinQt: Minor consistency fixes for the Settings window 2021-08-28 16:45:22 -04:00
JosJuice
b90008aadb Split out code for serializing/deserializing cheat lines 2021-08-28 19:31:27 +02:00
JosJuice
fb96ecb7da Move patch saving code to PatchEngine 2021-08-28 17:34:28 +02:00
Lioncash
1e4ecfe3d4 Gekko: Convert UReg_DMAL over to using Common::BitField 2021-08-27 11:20:37 -04:00
Lioncash
474e09c239 Gekko: Convert UReg_DMAU over to using Common::BitField 2021-08-27 11:19:21 -04:00
Lioncash
a126821d5e Gekko: Convert UReg_WPAR over to using Common::BitField 2021-08-27 11:18:03 -04:00
Lioncash
8ac079a647 Gekko: Convert UReg_MMCR1 over to using Common::BitField 2021-08-27 11:16:41 -04:00
Lioncash
300f7c10bd Gekko: Convert UReg_MMCR0 over to using Common::BitField 2021-08-27 11:15:15 -04:00
Lioncash
1ec3768b84 Gekko: Convert UReg_SDR1 over to using Common::BitField
Also fixes a typo in the struct name, since it was referring to SPR1
instead of SDR1. Given this isn't used anywhere yet, it's a painless
change.
2021-08-27 11:12:30 -04:00
Lioncash
9e183e63f1 Gekko: Convert UReg_HID4 over to using Common::BitField 2021-08-27 11:10:22 -04:00
Lioncash
6ab2e5ab16 Gekko: Convert UReg_HID2 over to using Common::BitField 2021-08-27 11:08:14 -04:00
Lioncash
02ec9c3b50 Gekko: Convert UReg_HID0 over to using Common::BitField 2021-08-27 11:05:51 -04:00
Lioncash
4591246608 Gekko: Convert UReg_FPSCR over to using Common::BitField 2021-08-27 11:01:32 -04:00
Lioncash
4ecdcc9d78 Gekko: Convert UReg_MSR over to using Common::BitField 2021-08-27 10:54:49 -04:00
Lioncash
1863212d94 Gekko: Convert UReg_XER over to using Common::BitField 2021-08-27 10:46:38 -04:00
Mai M
4816195366
Merge pull request #10054 from JosJuice/android-game-cache-lock
Android: Reduce gameFileCache lock contention
2021-08-27 10:15:25 -04:00
Mai M
7d88354659
Merge pull request #10061 from JosJuice/jitwidget-div-zero
DolphinQt: Fix divide by zero in JITWidget::Update
2021-08-27 10:13:52 -04:00
Franz-Josef Haider
9cd878218c Interpreter_Tables: specify FL_IN_A for twi.
rGPR[inst.RA] is an input to twi.
2021-08-27 16:59:02 +03:00
JosJuice
f17584fc06 DolphinQt: Fix divide by zero in JITWidget::Update
I ran into this while fiddling with the debugger.
2021-08-27 10:30:18 +02:00
Admiral H. Curtiss
a4d4dc82d4 DSPHLE/AX: Use in-class initialization. 2021-08-27 03:00:13 +02:00
JosJuice
feefc17b02 JitArm64: divwx - Optimize comparisons to 0x80000000 2021-08-26 15:04:56 +02:00
JosJuice
91b112b984 JitArm64: divwx - Optimize division by 2
...and let's optimize a divisor of 2 ever so slightly for
good measure. Most GameCube games seem to hit this on launch.
2021-08-26 15:04:56 +02:00