TellowKrinkle
25929789c1
VideoCommon: Don't pass State by inout
...
Spirv-cross's MSL codegen makes the amazing choice of compiling calls to inout functions as `State temp = s; call_function(temp); s = temp`. Not all Metal backends handle this mess well. In particular, it causes register spills on Intel, losing about 5% in performance.
2022-06-14 00:48:47 -05:00
TellowKrinkle
db6e928c8d
VideoCommon: Fix Intel GPUs on Metal/Vulkan locking up in ubershaders
2022-06-14 00:48:47 -05:00
JMC47
9315ac7071
Merge pull request #10587 from AdmiralCurtiss/memcard-path-unify
...
Raw Memory Card Path handling unification and consistency fixes.
2022-06-13 20:18:36 -04:00
JMC47
f96e91119a
Merge pull request #10735 from CasualPokePlayer/audio_dump_volume_fix
...
Have audio dumps apply volume
2022-06-13 17:09:58 -04:00
Jordan Woyak
1fc86cacd7
WiimoteEmu: Expose IMU pointing accelerometer weight setting.
2022-06-13 00:07:00 -05:00
Tillmann Karras
59dfc43949
Common: replace std::aligned_storage_t with alignas
...
C++23 deprecates std::aligned_storage_t while alignas works since C++11.
This fixes issue 12925.
2022-06-13 00:06:19 +01:00
JosJuice
62ec19c1ba
JitArm64: Remove redundant line in the EmitBackpatchRoutine comment
...
All stores clobber X0, so that stores clobber X0 when emitting_routine
is true is nothing special.
2022-06-12 11:03:38 +02:00
JosJuice
75e897c40e
JitArm64: Fix a minor mistake in the EmitBackpatchRoutine comment
...
X30 is used in fewer situations than the comment was claiming.
(I think that when I wrote the comment I was counting the use of X30
as a temp variable in the slowmem code as clobbering X30, but that
happens after pushing X30, so it doesn't actually get clobbered.)
2022-06-12 11:03:37 +02:00
JosJuice
3de49dee78
JitArm64: Properly reserve scratch register for soft MMU
...
Cleans up a hack from the previous commit.
2022-06-12 11:03:35 +02:00
JosJuice
3dce1df00e
JitArm64: Implement "soft MMU"
...
This is used when fastmem isn't available. Instead of always falling
back to the C++ code in MMU.cpp, the JIT translates addresses on its
own by looking them up in a table that Dolphin constructs. This is
slower than fastmem, but faster than the old non-fastmem code.
This is primarily useful for iOS, since that's the only major platform
nowadays where you can't reliably get fastmem. I think it would make
sense to merge this feature to master despite this, since there's
nothing actually iOS-specific about the feature. It would be of use
for me when I have to disable fastmem to stop Android Studio from
constantly breaking on segfaults, for instance.
Co-authored-by: OatmealDome <julian@oatmealdome.me>
2022-06-12 11:03:25 +02:00
OatmealDome
3e5f1a4f99
MemTools: Always provide a valid pointer in send_msg for mach_msg_overwrite
...
This cannot be nullptr in macOS Ventura and iOS 16.
2022-06-12 00:19:09 -04:00
TellowKrinkle
7cf5547b97
CMake: Make bundled MoltenVK optional
...
Adds ~20s to incremental build time in Xcode projects
2022-06-11 16:34:33 -05:00
TellowKrinkle
26fc167a44
DiscIO: Fix creation of rvz with > 2mb chunk size
2022-06-11 16:10:32 -05:00
TellowKrinkle
e4614067b3
CMake: Respect SKIP_POSTPROCESS_BUNDLE
2022-06-11 15:46:38 -05:00
CasualPokePlayer
ad892176d0
have audio dumps apply volume (fixes cases of audio dumps being "too loud" and in game audio controls having no effect)
2022-06-10 21:27:10 -07:00
Silent
7faf5ea170
Clear the UI after async shader compilation
2022-06-10 17:19:59 +02:00
Silent
dcad3ec892
Allow to interrupt shader precompilation by stopping emulation
2022-06-10 17:11:32 +02:00
JosJuice
bcc64a05b3
Memmap: Remove outdated comments for 32-bit
2022-06-09 19:51:36 +02:00
JosJuice
63283dcc72
JitArm64: Refactor EmitBackpatchRoutine parameters, part 2
2022-06-09 19:51:36 +02:00
JosJuice
27ed2a99a0
JitArm64: Refactor EmitBackpatchRoutine parameters, part 1
2022-06-09 19:51:36 +02:00
Pokechu22
27772e01d9
GCAdapter: Compare with LIBUSB_SUCCESS instead of 0
2022-06-08 15:30:22 -07:00
Pokechu22
83afaba785
IOS/USB: Use LibusbUtils::ErrorWrap and LIBUSB_SUCCESS
2022-06-08 15:29:11 -07:00
Pokechu22
5d301cc206
BTReal: Log warnings when libusb calls fail
2022-06-08 15:29:11 -07:00
Pokechu22
eeab51e3a4
Log warnings when LibusbUtils::MakeConfigDescriptor fails
2022-06-08 15:29:11 -07:00
Pokechu22
15cbb5c8f9
Log warnings when LibusbUtils::GetDeviceList fails
2022-06-08 15:29:11 -07:00
Pokechu22
91a7c4bdf2
LibusbUtils: Log warnings when libusb_set_option or libusb_handle_events_timeout_completed fail
2022-06-08 13:18:31 -07:00
Sepalani
d7135daff5
Socket: Fix some errors related to non-blocking connect
2022-06-08 19:06:42 +04:00
Sepalani
c53a4c8c1a
Socket: Keep track of the socket connection progress
...
Workaround for mbedtls handshake issues with partially connected sockets
2022-06-08 19:06:42 +04:00
Sepalani
cbadc6e81a
NetworkCaptureLogger: Move ErrorState struct to Common/Network
2022-06-08 19:06:42 +04:00
Sepalani
41ce3a83d5
Socket: Refactor WiiSockMan::Convert
2022-06-08 19:06:42 +04:00
JMC47
daf8e3ddde
Merge pull request #10462 from OatmealDome/steam-runtime
...
DolphinQt: Add support for a Steam Runtime build
2022-06-06 20:18:06 -04:00
Tillmann Karras
79a7bf02eb
CMake: rename minizip to minizip-ng
...
minizip-ng is the new name used by the upstream project as well as all
distros other than Fedora (but it looks like it will be renamed there).
2022-06-06 14:21:43 +02:00
Pokechu22
d03b277403
DSP LLE Recompiler: Fix LOOP and BLOOP when the counter is between 0x8001 and 0xFFFF
2022-06-05 19:34:31 -07:00
Admiral H. Curtiss
4fd18cf207
DolphinQt: Unify handling of raw memory card path.
2022-06-05 21:48:13 +02:00
Admiral H. Curtiss
deb9964333
Core: Unify handling of raw memory card path.
2022-06-05 21:43:48 +02:00
Admiral H. Curtiss
b1d1f2aa06
Common/StringUtil: Add convenience function for converting paths to use forward slashes on Windows.
2022-06-05 21:24:45 +02:00
Admiral H. Curtiss
2081e2f2a1
Config: Move ToGameCubeRegion(), GetDirectoryForRegion(), and GetBootROMPath() to new config system namespace.
2022-06-05 21:24:45 +02:00
JMC47
664663e8de
Merge pull request #10604 from Pokechu22/gcadapter-refactor
...
Refactor GCAdapter, part 1
2022-06-04 16:30:25 -04:00
Admiral H. Curtiss
96f9d1000d
Merge pull request #10721 from Dentomologist/fix_warnings_on_generic_builder
...
Fix warnings on generic builder
2022-06-04 21:51:58 +02:00
Dentomologist
92af703f29
DSPAssembler: Fix -Wswitch warning
2022-06-04 12:08:09 -07:00
Tilka
d7cda67462
Merge pull request #10716 from Pokechu22/dsp-lle-loop-saturation
...
DSP LLE: Apply saturation to LOOP and BLOOP with $ac0.m and $ac1.m
2022-06-04 15:30:06 +01:00
Admiral H. Curtiss
9fb17b5a48
Merge pull request #10718 from shuffle2/hotkeys
...
qt: unregister Settings' DevicesChanged callback during shutdown
2022-06-03 13:48:28 +02:00
Shawn Hoffman
b16711f2af
qt: fix wiipane usb list layout
2022-06-02 23:58:13 -07:00
Shawn Hoffman
27dd2c4aa4
qt: unregister Settings' DevicesChanged callback during shutdown
...
fixes a crash on close
2022-06-02 23:32:21 -07:00
Pokechu22
6823b4d7a0
GCAdapter: Use LibusbUtils::ErrorWrap in log messages
2022-06-02 19:39:36 -07:00
Pokechu22
457fcbaf5e
LibusbUtils: Create ErrorWrap
2022-06-02 19:39:36 -07:00
Pokechu22
0d8772ccbe
GCAdapter: Make local variables const where possible
2022-06-02 19:39:36 -07:00
Pokechu22
cd9edeacda
GCAdapter: Merge Read logic
2022-06-02 19:39:36 -07:00
Pokechu22
9ec65baf46
GCAdapter: Have the read thread control the write thread
...
This was done for Android in 6cc40b1235
.
2022-06-02 19:39:36 -07:00
Pokechu22
0fa92694d1
GCAdapter: Exit early if the adapter fails to open on Android
...
This is only so that indentation is consistent with the non-android code.
2022-06-02 19:39:36 -07:00
Pokechu22
749a4ad1ef
GCAdapter: Remove check on write size on android
...
It was removed for non-android in 56239d1ae1
, and android already uses a separate thread, so presumably this isn't needed anymore.
2022-06-02 19:39:36 -07:00
Pokechu22
27947046af
GCAdapter: Harmonize read/write thread variable names
2022-06-02 19:39:36 -07:00
Pokechu22
279888da8c
GCAdapter: Remove unused includes
2022-06-02 19:39:36 -07:00
Pokechu22
3ae775e574
GCAdapter: Use determinism hack on Android
...
This hack was added in 8f0cbefbe5
, and the part of it in SI_DeviceGCAdapter is present on Android already, so I don't see any reason why this part doesn't apply to Android.
2022-06-02 19:39:36 -07:00
Pokechu22
55922e6d17
GCAdapter: Convert ControllerType to an enum class
2022-06-02 19:39:36 -07:00
Pokechu22
682d86f4da
GCAdapter: Fix rumble enabled config on Android
...
I believe the setting already existed in the UI; it just wasn't implemented in GCAdapter_Android.cpp.
2022-06-02 19:39:36 -07:00
Pokechu22
36d4ee0939
GCAdapter: Use std::array for controller read and write payloads
2022-06-02 19:39:36 -07:00
Pokechu22
dd6592698e
GCAdapter: Merge GCAdapter.cpp and GCAdapter_Android.cpp
...
This is mostly a brainless merge, #ifdef-ing anything that doesn't match between the two while preserving common logic. I didn't rename any variables (although similar ones do exist), but I did change one log that was ERROR on android and NOTICE elsewhere to just always be NOTICE. Further merging will follow.
2022-06-02 19:39:36 -07:00
Mai M
f7f47d3cd0
Merge pull request #10692 from Pokechu22/dsp-manual-set40-and-write-backlog
...
docs/DSP: Add sections on 16-bit and 40-bit modes and on main and extended opcode writing to the same register
2022-06-02 20:26:31 -04:00
Mai M
c8ab236e0a
Merge pull request #10709 from Pokechu22/dsp-lle-update-sr-16
...
DSP LLE JIT: Fix Update_SR_Register16_OverS32
2022-06-02 20:22:36 -04:00
Mai M
84944625df
Merge pull request #10714 from OatmealDome/macos-mojave-bump
...
BuildMacOSUniversalBinary: Bump minimum macOS to 10.14
2022-06-02 20:20:52 -04:00
Pokechu22
0fc1fb023f
Merge pull request #10678 from Dentomologist/skip_pagefault_test_if_no_exception_handler
...
UnitTests: Skip PageFaultTest if exception handlers aren't supported
2022-06-02 16:21:21 -07:00
OatmealDome
7ce1a5717a
UICommon: Add support for portable.txt on macOS
2022-06-02 14:56:09 -04:00
Admiral H. Curtiss
a58bb2aa24
Merge pull request #10701 from TryTwo/PR_Memory_Widget_Connections
...
Debugger MemoryWidget: Navigate to memory from breakpoint widget and cheat search.
2022-06-02 20:50:44 +02:00
Pokechu22
4bc42ded80
DSP LLE Interpreter: Remove OpReadRegisterAndSaturate
...
Instead, saturate in OpReadRegister, as all uses of OpReadRegisterAndSaturate called OpReadRegister for other registers (and there isn't anything that writes to $ac0.m or $ac1.m without saturation).
2022-06-01 22:01:49 -07:00
Pokechu22
928f745e36
DSP LLE Interpreter: Fix typo in 'LS
...
This was introduced in fc1db5eaa0
.
2022-06-01 22:01:49 -07:00
Pokechu22
e7f78379ec
DSP LLE Recompiler: Apply saturation to LOOP and BLOOP with $ac0.m and $ac1.m
2022-06-01 22:01:49 -07:00
Pokechu22
bc206b7a27
DSP LLE Interpreter: Apply saturation to LOOP and BLOOP with $ac0.m and $ac1.m
2022-06-01 22:01:49 -07:00
OatmealDome
803a0de5a4
VKMain: Remove check for macOS 10.14
2022-06-01 22:57:56 -04:00
OatmealDome
1cb3058abe
MemoryUtil: Remove __builtin_available for macOS 10.14
2022-06-01 22:57:56 -04:00
OatmealDome
6e2febd404
VideoBackendBase: Remove __builtin_available for macOS 10.14
2022-06-01 22:57:51 -04:00
TryTwo
177dae6a1a
Add options for BreakpointWidget, WatchWidget, and CheatSearches to send address to Memory Widget
2022-06-01 01:53:15 -07:00
TellowKrinkle
f9c6eb7b98
InputCommon/ControllerEmu: Use more locks
...
Loading configs while another thread is messing with stuff just doesn't feel like a good idea
Hopefully fixes Wiimote Scanning Thread crashes on startup
2022-05-31 20:17:37 -05:00
Dentomologist
e0c9ae16b9
FileUtil: Refactor CreateSysDirectoryPath()
2022-05-31 16:18:08 -07:00
Dentomologist
c2be78079c
FileUtil: Remove GetSysDirectory log spam
...
Create and log path the first time GetSysDirectory is called, then just
return the path on future calls.
2022-05-31 16:18:08 -07:00
Dentomologist
4d563ce4d1
Android: Ensure File::s_android_sys_directory is set only once
2022-05-31 16:18:08 -07:00
Pokechu22
f88b7ab6b3
DSP LLE JIT: Fix Update_SR_Register16_OverS32
...
There were 3 bugs here:
- The input register for the full register wasn't actually being used; it was read into RCX but RCX wasn't used by Update_SR_Register16_OverS32 (except as a scratch register). The way the DSP LLE recompiler uses registers is in general confusing, so this commit changes a few uses to have a variable for the register being used, to make code a bit more readable. (Default parameter values were also removed so that they needed to be explicitly specified).
- Update_SR_Register16 was doing a 64-bit test, when it should have been doing a 16-bit test. For the most part this doesn't matter due to sign-extension, but it does come up with e.g. `ORI` or `ANDI`.
- Update_SR_Register16_OverS32 did the over s32 check, and then called Update_SR_Register16. Update_SR_Register16 masks $sr with ~SR_CMP_MASK, clearing the over s32 bit. Now the over s32 check is performed after calling Update_SR_Register16 (without masking a second time). No official uCode cares about the over s32 bit.
2022-05-30 20:10:55 -07:00
Pokechu22
7c63bd1893
docs/DSP: Fix inconsistency with ADDI and CMPI
...
We don't have anything called $amD, though we do have $acsD. However, these instructions affect flags based on the whole accumulator, so it's better to just use $acD.
2022-05-29 15:00:09 -07:00
Pokechu22
baf2c710ff
DSP: Fix typo with TST
2022-05-29 15:00:09 -07:00
Pokechu22
4dc7208195
docs/DSP: Fix typo with arithmetic instructions that take a 16-bit immediate
...
These instructions used an 'r' in their bit list, but a 'd' in the operands.
2022-05-29 15:00:09 -07:00
Pokechu22
b349254ff4
docs/DSP: Document the behavior when main and extended opcodes both write to the same register (the write backlog)
...
For more information, ApplyWriteBackLog, WriteToBackLog, and ZeroWriteBackLog were added in b787f5f8f7
and the explanatory comment was added in fd40513fed
, although it did not mention the specific instructions that could trigger this edge case. The statements about which registers can be written by main opcodes and extension opcodes are based on my own checking of all instructions in the manual.
2022-05-29 15:00:09 -07:00
OatmealDome
df22439826
FS: Reshuffle Rename to fix steamrt unit test failure
2022-05-29 13:50:32 -04:00
OatmealDome
09875c6403
DolphinQt: Copy qt.conf into Binaries output folder on Steam builds for Linux
2022-05-29 13:50:32 -04:00
OatmealDome
5c4122ec2a
DolphinQt: Copy Sys into Binaries output folder on Steam builds for Linux
2022-05-29 13:50:32 -04:00
OatmealDome
77fb5fa7dc
DolphinQt: Copy all Qt libraries into Binaries output folder on Steam builds for Linux
2022-05-29 13:50:32 -04:00
OatmealDome
6b05f5cca8
DolphinQt: Set the executable's rpath to a lib directory in $ORIGIN on Steam builds for Linux
...
We will store our Qt shared libraries here.
2022-05-29 13:50:32 -04:00
OatmealDome
e679502a5d
GLX: Guard against redefinition of PFNGLXSWAPINTERVALEXTPROC
...
This type is already declared in glxext.h in the Steam Runtime.
2022-05-29 13:50:32 -04:00
Tilka
e17a4f49f5
Merge pull request #10668 from Dentomologist/convert_pointerwrap_mode_to_enum_class
...
Convert PointerWrap::Mode to enum class
2022-05-29 00:57:43 +01:00
Tilka
3dbc18060b
Merge pull request #10694 from Pokechu22/dsp-assembler-error-messages-etc
...
DSPAssembler: Rework errors and warnings, and related cleanup
2022-05-29 00:16:23 +01:00
Tilka
57e444cd5d
Merge pull request #10697 from Dentomologist/windows_remove_qt5_code_and_references
...
Windows: Remove unused Qt5 block and reference
2022-05-29 00:14:34 +01:00
Pokechu22
d307c34af1
DSP LLE: Rename CMPAR to CMPAXH
2022-05-27 18:22:38 -07:00
Dentomologist
059cd5f6e1
Windows: Remove unused Qt 5 code and references
2022-05-25 17:51:17 -07:00
Dentomologist
c8e20c569b
Convert PointerWrap::Mode to enum class
2022-05-25 13:16:46 -07:00
Dentomologist
f6b9acccfc
Common: Refactor PointerWrap
2022-05-25 13:06:41 -07:00
Pokechu22
2341ff00ab
NetPlay: Make messages about non-matching games clearer
2022-05-24 23:20:45 -07:00
Pokechu22
ea9b0bff08
NetPlay: Delete NetPlayClient::GetPlayerList
...
It's been unused since DolphinWX was removed in 44b22c90df
. Prior to that, it was used in Source/Core/DolphinWX/NetPlay/NetWindow.cpp. But the new equivalent in Source/Core/DolphinQt/NetPlay/NetPlayDialog.cpp uses NetPlayClient::GetPlayers instead. Stringifying (or creating a table, as is done now) should be done by the UI in any case.
2022-05-24 14:44:28 -07:00
Tilka
b6ad5c5902
Merge pull request #10683 from Pokechu22/gamelist-home-end
...
GameList: Have home/end keys move to first/last row
2022-05-24 22:10:38 +01:00
Pokechu22
bd3173e344
DSPAssembler: Rework errors and warnings
...
Among other things, this trims trailing newline characters. Before (on windows) the \r would corrupt the output and make them very hard to understand (as the error message would be drawn over the code line, but part of the code line would peek out from behind it).
2022-05-23 20:27:17 -07:00
Pokechu22
db3d457e5f
DSPDisassembler: Remove redundant definition of CW
...
CW is used as a fallback to write a full instruction as hex, but we already declare it in DSPTables.h for the assembler.
2022-05-23 19:36:47 -07:00
Pokechu22
b06d38389b
DSP: Remove some magic numbers for register IDs
2022-05-23 19:36:47 -07:00
Pokechu22
8b52c7315b
DSP: Fix assembling x8/x9/xA/xB conditions
...
The assembler upper-cases the mnemonic internally, so it never would match the lower-case x.
2022-05-23 19:36:47 -07:00
Pokechu22
e7f6e19c61
DSPAssembler: Slightly improve readability of AssemblePass
...
This should result in no behavior differences.
2022-05-23 19:36:47 -07:00
Admiral H. Curtiss
b18fd3d3ce
Core/State: Make memory layout of StateHeader more explicit.
2022-05-24 03:04:52 +02:00
Admiral H. Curtiss
f68c3b758e
Common/Network: Use std::array in IPv4Header.
2022-05-23 02:01:59 +02:00
JMC47
3a3357444e
Merge pull request #8067 from endrift/hsp
...
Preliminary HSP support
2022-05-22 13:42:27 -04:00
Pokechu22
1c4a5d9fc9
GameList: Work around Qt bug regarding clicking in the background not setting the position used by page down/end
2022-05-21 23:33:46 -07:00
Admiral H. Curtiss
8d0f52032b
IOS/DI: Fake the error 001 read when running DirectoryBlobs or Riivolution-patched games.
2022-05-22 04:22:41 +02:00
Pokechu22
2d50ba0ca2
GameList: Have home/end keys move to first/last row
2022-05-21 18:11:24 -07:00
Admiral H. Curtiss
0e948f3e21
Merge pull request #10620 from phire/cmake_win_fixes
...
Various fixes for msvc/cmake builds
2022-05-22 03:08:17 +02:00
Pokechu22
8b3517a9f9
Merge pull request #10686 from Tilka/pikmin_demo
...
DSPHLE: handle crc of Pikmin 1 GC US Demo
2022-05-21 17:30:31 -07:00
Vicki Pfau
6a26b0ce8a
HW: Initial HSP implementation with ARAM expansion
2022-05-21 17:05:49 -07:00
Admiral H. Curtiss
580c721c82
cmake: Don't use PCH with Qt6.
2022-05-22 01:19:44 +02:00
Admiral H. Curtiss
a5e85627b0
cmake: Use Policy CMP0117 for more sensible RTTI flag configuration on MSVC.
2022-05-22 00:30:56 +02:00
Admiral H. Curtiss
9908219dc6
cmake: Add a few missing settings from the Visual Studio project files on MSVC.
2022-05-22 00:29:48 +02:00
Admiral H. Curtiss
dbee810a04
cmake: Fixes for Qt6 on Windows.
2022-05-22 00:29:48 +02:00
Scott Mansell
876f6651b4
cmake: fix PCH to work with msvc/ninja
...
Ninja puts way more effort into compiling targets in parallel, and
ignores dependenceis until link time.
So we need to jump though hoops to force ninja to compile
pch.cpp before any targets which depend on the PCH.
2022-05-22 00:29:47 +02:00
Scott Mansell
0909e00117
cmake: fix MSVC PCH support
...
I'm not sure if the previous implementation ever worked.
2022-05-22 00:29:47 +02:00
Scott Mansell
2348017ee8
cmake: ignore external warnings in MSVC
...
Since we also treat all warnings as errors, we need to
ignore these to successfully build.
2022-05-22 00:29:46 +02:00
Scott Mansell
987f270083
cmake: fix buggy target sources on windows
...
I have no idea why cmake supports PUBLIC on target_sources,
but it does. It causes all targets that depend on this target
to try and include the files in their sources.
Except it doesn't take paths into account, so it breaks. Mabye
it would work if you used an abolute source? But I'm not sure
there is a sane usecase.
2022-05-22 00:29:46 +02:00
Sage King
f0454ab2fa
Added double click to add expressions when mapping
2022-05-21 14:08:49 -06:00
Tillmann Karras
d7da4aca19
DSPHLE: handle crc of Pikmin 1 GC US Demo
...
The DSP code only has minor differences to the final release.
2022-05-21 16:48:34 +01:00
Pokechu22
863cb591fe
MainSettings: Make MAIN_CUSTOM_RTC_VALUE default value less magical
2022-05-20 20:35:53 -07:00
Mai M
244e4acff2
Merge pull request #10674 from OatmealDome/mac-steam-overlay
...
DolphinQt: Add com.apple.security.cs.allow-dyld-environment-variables to entitlements
2022-05-19 22:43:57 -04:00
Pokechu22
151119cece
DSPInterpreter: Fix typo in isOverflow comment
2022-05-19 16:36:39 -07:00
Mai M
a98d0367d8
Merge pull request #10677 from Pokechu22/no-printf-log
...
Remove printf-style logging
2022-05-19 17:55:17 -04:00
Pokechu22
2aa0ae097b
Merge pull request #10672 from Pokechu22/xf-invtxspec
...
Show panic alerts if the CP configuration doesn't match the XF configuration
2022-05-19 13:13:53 -07:00
Pokechu22
8baeb75bd2
Merge pull request #10669 from Pokechu22/adapter-change-aa-mode-list-reload
...
Fix antialiasing modes being determined from the wrong graphics adapter
2022-05-19 13:13:22 -07:00
Pokechu22
5f9212dd84
Common/LogManager: Remove old printf-style logging functions
2022-05-19 12:41:58 -07:00
Pokechu22
0637c17b59
VideoCommon/FrameDump: printf-format messages before logging them
2022-05-19 12:41:58 -07:00
Pokechu22
35cb5c8f75
EXI_DeviceEthernet: Replace INFO_LOG with INFO_LOG_FMT
2022-05-19 12:41:58 -07:00
Pokechu22
2f5e69a94e
JitArm64: Replace WARN_LOG with WARN_LOG_FMT
2022-05-19 12:41:57 -07:00
Pokechu22
642a1c1348
MainWindow: Replace WARN_LOG with WARN_LOG_FMT
2022-05-19 12:41:57 -07:00
Pokechu22
0faf0b80ad
TAPServer_Apple: Use fmt logging
2022-05-19 12:41:57 -07:00
Dentomologist
6ffd938f98
UnitTests: Skip PageFaultTest if exception handlers are not supported
...
Page faults should only occur on architectures that support exception
handlers, so skip the test on other architectures to avoid spurious test
failures.
2022-05-19 12:26:41 -07:00
Pokechu22
a86fb9b475
Core/WGInput: Use fmt logging and include HRESULT in messages
2022-05-19 12:12:19 -07:00
OatmealDome
185188c009
DolphinQt: Add com.apple.security.cs.allow-dyld-environment-variables to entitlements
2022-05-18 20:23:17 -04:00
Pokechu22
8df55b492c
Show a panic alert if the CP matrix indices don't match the XF matrix indices
...
This almost certainly never happens, but if it does we want to know.
2022-05-18 14:43:14 -07:00
Pokechu22
38a75f6a49
Show a panic alert if the CP vertex config doesn't match the XF vertex config
...
This probably isn't triggered by real games, but it's possible to accidentally do it with libogc (which results in freezes on real hardware).
2022-05-18 14:43:14 -07:00
Pokechu22
46bcdc4372
Rename CP and XF normal component count enums and update their descriptions
2022-05-18 14:43:14 -07:00
Pokechu22
736466a5d9
XFMemory: Rename hostinfo to invtxspec
2022-05-18 14:43:14 -07:00
Pokechu22
3949698acf
Verify graphics config validity after populating the backend info
...
... and refresh the config before populating the backend info, as the config (specifically iAdapter) needs to be set to correctly populate the backend info.
Before, the list of valid antialiasing modes was always determined from the first adapter on the list on startup, regardless of the adapter the user selected.
2022-05-16 16:59:57 -07:00
Pokechu22
3950bc4620
Treat changing the graphics adapter the same as changing the backend
...
This results in the list of available antialiasing modes being updated; before, it would only show the modes available for the adapter that was selected when the graphics window was opened (or the backend was last changed).
The list of available modes is updated by `GraphicsWindow::OnBackendChanged`'s call to `VideoBackendBase::PopulateBackendInfoFromUI`, and then `EnhancementsWidget::LoadSettings` updates the UI. Both of these are connected to the `GraphicsWindow::BackendChanged` signal.
2022-05-16 16:59:31 -07:00
Mai M
4085d463a1
Merge pull request #10661 from Tilka/ax_init
...
AX: refactor buffer initialization
2022-05-16 14:23:13 -04:00
Admiral H. Curtiss
b10808d815
Merge pull request #8763 from JosJuice/panic-alert-deadlock-gpu
...
DolphinQt: Fix the panic alert deadlock, dual core edition
2022-05-16 02:21:14 +02:00
Tillmann Karras
ac7aeeece6
AX: refactor buffer initialization
2022-05-15 00:24:38 +01:00
Pokechu22
b8cca8f598
ProcessorInterface: Implement PI_FIFO_RESET
...
Fixes unknown opcodes 0x0f and 0xff when resetting titles, e.g. https://bugs.dolphin-emu.org/issues/12492
2022-05-13 14:20:14 -07:00
Tilka
fcb3f9e35b
Merge pull request #10652 from shuffle2/fmt
...
update fmt and fix warnings that popped up with vs 17.2
2022-05-13 22:09:01 +01:00
Tillmann Karras
855dbf88ca
AX: handle DPL2 mixer control in old GameCube titles
...
This fixes the audio test in Rogue Squadron 2 (issue 12902).
2022-05-13 00:18:24 +01:00
Tillmann Karras
8438e647f2
AXWii: handle mixer control more precisely
...
On GameCube, a ramp bit has no effect if its corresponding channel is
inactive. On Wii however, enabling just the ramp implicitly also enables
the channel. AXSetVoiceMix() never does that, so this commit should have
no impact on games unless they fiddle with the mixer control value
directly.
2022-05-12 21:21:03 +01:00
Tilka
333659cefa
Merge pull request #10643 from Tilka/ax_cleanup
...
AX: fix missing ramp of main surround channel
2022-05-12 21:12:04 +01:00
Shawn Hoffman
7b8e6c5b36
fmt: do not define uint type in global namespace
2022-05-10 21:17:10 -07:00
Shawn Hoffman
fa17153ebc
fmt: use make_format_args instead of make_args_checked
...
make_args_checked is deprecated
see https://github.com/fmtlib/fmt/pull/2760 and the linked comment
2022-05-10 19:25:48 -07:00
Shawn Hoffman
56626f73bf
fmt: fix 'ambigous overload' error
2022-05-10 19:19:52 -07:00
Tilka
c41467a8eb
Merge pull request #10650 from AdmiralCurtiss/memory-widget-resize-fix
...
Qt/MemoryViewWidget: Fix resizing.
2022-05-10 21:25:33 +01:00
Admiral H. Curtiss
828ce0f3cf
Qt/MemoryViewWidget: Fix resizing.
2022-05-10 12:35:37 +02:00
Tilka
a768dc6f80
Merge pull request #10374 from Pokechu22/slots-unused-warning
...
Work around false SLOTS defined but not used warning on GCC
2022-05-09 22:28:59 +01:00
Pokechu22
61a144ba06
Show a panic alert if movie is missing its starting savestate
2022-05-09 13:32:38 -07:00
Tilka
d82f2d7314
Merge pull request #10612 from AdmiralCurtiss/memory-widget-refactoring-2
...
Qt/MemoryViewWidget: Replace the click-to-center behavior with a scrollbar.
2022-05-09 20:11:58 +01:00
Tilka
5ef17e60d0
Merge pull request #10633 from Minty-Meeo/generate-from-address-fix
...
Index SymbolDB when generated from address
2022-05-09 19:38:25 +01:00
Shawn Hoffman
5d459380d1
qt/win: remove hack for tab bar scroll buttons
2022-05-09 01:45:42 -07:00
Admiral H. Curtiss
7f94e62dd5
Qt/MemoryViewWidget: Remove the behavior that clicking anywhere in the table centers the table on that row.
2022-05-08 23:14:37 +02:00
Admiral H. Curtiss
88dd9e57f3
Qt/MemoryViewWidget: Add a custom scrollbar.
2022-05-08 23:14:37 +02:00
Admiral H. Curtiss
4e153212a0
Qt/MemoryViewWidget: Convert into QWidget that has the table as a member.
2022-05-08 23:14:36 +02:00
Admiral H. Curtiss
0e1e2323ea
Qt/MemoryViewWidget: Keyboard navigation should observe the number of bytes per row instead of assuming 16.
2022-05-08 23:14:36 +02:00
Admiral H. Curtiss
b339c6cac1
Merge pull request #10594 from AdmiralCurtiss/gamecube-pane-signal-block
...
Qt/GameCubePane: Don't trigger config change events when populating GUI.
2022-05-08 20:54:51 +02:00
Admiral H. Curtiss
6e54233eb8
Merge pull request #10593 from AdmiralCurtiss/interface-pane-signal-block
...
Qt/InterfacePane: Don't trigger config change events when populating GUI.
2022-05-08 20:43:09 +02:00
JosJuice
e19b995a1c
Merge pull request #10644 from shuffle2/hide-balloon
...
Qt: hide balloon tooltip when parent gets hidden
2022-05-08 17:46:12 +02:00
Admiral H. Curtiss
02ef946e81
HW/Memmap: Refuse to load savestate if memory settings are different.
2022-05-08 11:06:27 +02:00
Admiral H. Curtiss
e2dee9c3f8
Qt/InterfacePane: Don't trigger config change events when populating GUI.
2022-05-08 11:04:39 +02:00
Admiral H. Curtiss
1d224d1da5
Qt/GameCubePane: Don't trigger config change events when populating GUI.
2022-05-08 11:03:33 +02:00
Admiral H. Curtiss
67ee78b9dc
Merge pull request #10621 from TryTwo/PR_Register_Column_Type
...
Debugger RegisterWidget Add option to change column's display type
2022-05-08 10:59:05 +02:00
Shawn Hoffman
1e033a4f73
Qt: hide balloon tooltip when parent gets hidden
...
fixes balloon remaining onscreen when parent gets
hidden via escape key for example.
2022-05-08 00:48:30 -07:00
JMC47
5f04ad5c3c
Merge pull request #10559 from shuffle2/qt6
...
update to Qt6 on windows, support Qt6 elsewhere
2022-05-08 01:29:46 -04:00
Mai M
997754bf3b
Merge pull request #10642 from JosJuice/refactor-mmu-read
...
PowerPC: Refactor ReadFromHardware
2022-05-07 17:18:17 -04:00
JosJuice
b6b7030482
PowerPC: Add HW_PAGE_MASK constant
2022-05-07 19:37:44 +02:00
Tillmann Karras
e6e283a11c
AX: rename main depop fields and mixer flags
2022-05-07 18:30:32 +01:00
Tillmann Karras
048469f7c2
AX: fix missing ramp of main surround channel
2022-05-07 18:20:48 +01:00
JosJuice
ed40b43960
PowerPC: Reorder code in ReadFromHardware
...
This refactorization is done just to match the order that I made
WriteToHardware use in 543ed8a
. For WriteToHardware, it's important that
things like MMIO and gather pipe are handled before we reach a special
piece of code that only should get triggered for writes that hit memory
directly, but for ReadFromHardware we don't have any code like that.
2022-05-07 15:52:35 +02:00
JosJuice
3b3c60dc4c
PowerPC: Check page crossing for non-translated reads
...
This fixes a problem where Dolphin could crash if a non-translated
read crossed the end of a physical memory region.
The same change was applied to WriteToHardware in ecbce0a
.
2022-05-07 15:41:21 +02:00
Mai M
9858a79974
Merge pull request #10640 from JosJuice/jitarm64-low-dcbz
...
JitArm64: Implement low DCBZ hack
2022-05-07 09:39:49 -04:00
JosJuice
16eb188f1d
JitArm64: Implement low DCBZ hack
...
JitArm64 port of 76228fa
.
2022-05-07 15:37:50 +02:00
Tillmann Karras
f65b7066f5
AX: put each volume and its ramp delta into a dedicated struct (NFC)
2022-05-07 13:19:15 +01:00
Tillmann Karras
83858e68d4
AX: clarify main LRS channel names (NFC)
2022-05-07 13:19:15 +01:00
OatmealDome
baabd63f81
WiiUtils: Change default NUS Shop URL to Dolphin's fake NUS
2022-05-05 15:21:02 -04:00
OatmealDome
8c669efe76
MainSettings: Add setting to control Wii NUS Shop URL for system updates
2022-05-05 00:35:53 -04:00
Minty-Meeo
8fec3224fc
Index SymbolDB when generated from address
...
Otherwise every function will be the same color in the code view widget.
2022-05-03 21:20:00 -05:00
Mai M
d0ed09ab6f
Merge pull request #10632 from Tilka/ax_ub
...
AX: prevent undefined behavior
2022-05-03 20:13:07 -04:00
Tilka
ac643825ce
Merge pull request #10628 from Minty-Meeo/force_inline-minor-change
...
Change _WIN32 check to a _MSC_VER check in Inline.h
2022-05-03 23:07:40 +01:00
Tilka
f75f19ae6a
Merge pull request #10629 from Tilka/spaces
...
DolphinTool: add missing spaces in help text
2022-05-03 23:01:25 +01:00
Tillmann Karras
aee547aa0e
AX: prevent undefined behavior
...
u16 gets promoted to s32 where changing the uppermost bit is UB.
2022-05-03 22:17:24 +01:00
spycrab
004e8a80b2
Add support for building against Qt 6
2022-05-02 22:39:33 -07:00
Tillmann Karras
4b66ce6c4d
DolphinTool: add missing spaces in help text
2022-05-02 12:19:01 +01:00
Minty-Meeo
9c22205ab1
Change _WIN32 check to a _MSC_VER check in Inline.h
...
This is compiler dependent, not OS dependent.
2022-05-02 01:57:36 -05:00
TryTwo
95175bbb96
Debugger RegisterWidget: Add context options to change entire column's display type.
2022-04-29 17:21:39 -07:00
Shawn Hoffman
64cd4cc86f
msbuild: use default Project attrs
...
maybe it makes the xml less scary :D
2022-04-27 15:26:43 -07:00
Shawn Hoffman
2808909a97
msbuild: simplify lang/scm projects a bit
2022-04-27 15:06:04 -07:00
Mai M
e4695e329c
Merge pull request #10616 from shuffle2/fmt-lib
...
msbuild: fmt static library
2022-04-26 23:25:58 -04:00
Shawn Hoffman
44951a4cbc
use fmt as static library instead of headers
...
reportedly improves compile time
2022-04-26 16:32:29 -07:00
Admiral H. Curtiss
01d4a2e9cc
TextureCacheBase: Don't log error while measuring state size.
2022-04-26 21:26:42 +02:00
JMC47
c0488de482
Merge pull request #10251 from Pokechu22/negative-scissor
...
Rework scissor handling
2022-04-24 15:00:42 -04:00
Pokechu22
8e7c848425
Merge pull request #10601 from Pokechu22/vulkan-shader-compile-error
...
Vulkan: Improve shader compile error handling
2022-04-24 11:43:10 -07:00
JMC47
c42392c565
Merge pull request #10290 from OatmealDome/m1-earlyz-bug
...
DriverDetails: Add broken discard with early-Z bug on Apple Silicon GPUs
2022-04-24 13:30:04 -04:00
Admiral H. Curtiss
61edcf7e4f
Merge pull request #10606 from AdmiralCurtiss/memory-widget-refactoring-1
...
Qt/MemoryWidget: Light refactoring and quality of life features.
2022-04-24 18:02:19 +02:00
Admiral H. Curtiss
787e3efeb8
Qt/MemoryViewWidget: Detect row breakpoint cell by cell data instead of cell position.
2022-04-24 16:22:36 +02:00
Admiral H. Curtiss
6920a24f1d
Qt/MemoryViewWidget: Add option to copy the actually displayed cell value to clipboard.
2022-04-24 16:22:36 +02:00
Admiral H. Curtiss
54ec0bd0d0
Qt/MemoryViewWidget: Don't use a member variable to hold information about the current mouse click.
2022-04-24 16:14:42 +02:00
JosJuice
6abf367676
Merge pull request #10588 from JosJuice/jitarm64-psq-stxx-q0
...
JitArm64: Always lock Q0 in psq_stXX
2022-04-24 10:37:45 +02:00
Admiral H. Curtiss
26f9c8b847
Qt/MemoryWidget: Don't force a fixed size for the sidebar.
2022-04-24 05:24:20 +02:00
Admiral H. Curtiss
4c080b8451
Merge pull request #10578 from TryTwo/PR_MemoryWidget_Dual_Views
...
Debugger MemoryWidget: Add dual views
2022-04-23 22:23:31 +02:00
JosJuice
e0afcb3b94
Merge pull request #10540 from nyanpasu64/fix-gcadapter-atomics
...
Remove atomic usage and fix mutex locking in GCAdapter code
2022-04-23 22:04:10 +02:00
Admiral H. Curtiss
8b5a61b8fd
Merge pull request #10599 from shuffle2/libusb
...
Libusb fixups
2022-04-23 20:32:47 +02:00
TryTwo
a7111e3910
Dual View any size.
2022-04-23 02:46:25 -07:00
JosJuice
14f9ffeb02
JitArm64: Add documentation comment for EmitBackpatchRoutine
2022-04-23 11:37:52 +02:00
Pokechu22
784079853d
VideoCommon: Add comment explaining why only the first normal gets normalized
...
Co-authored-by: Scott Mansell <phiren@gmail.com>
2022-04-22 16:54:38 -07:00
Pokechu22
2a5c77f43f
VideoCommon: Handle emboss texgen with only a single normal
...
Fixes a large number of effects in Rogue Squadron 2 and 3.
2022-04-22 16:54:38 -07:00
Pokechu22
39b2854b98
VertexLoader: Convert count register to remaining register
...
This more accurately represents what's going on, and also ends at 0 instead of 1, making some indexing operations easier. This also changes it so that position_matrix_index_cache actually starts from index 0 instead of index 1.
2022-04-22 16:54:38 -07:00
Pokechu22
97d0ff58c8
Convert vertex loader position cache to std::array
2022-04-22 16:54:38 -07:00
Pokechu22
f722bdf7f1
VertexLoaderX64: Refactor so that zfreeze is only in one place
...
(Specifically, the copy for VertexLoaderManager::position_cache. The position matrix index happens elsewhere, and the float path still has special logic to copy to scratch3.)
2022-04-22 16:54:38 -07:00
Pokechu22
6f1350ae51
VertexLoaderARM64: Fix z-freeze position matrix index
...
Before, it would always write to index 0 (which is unused). Now it writes to the correct index.
2022-04-22 16:54:38 -07:00
Pokechu22
04fdadd9d5
VideoCommon: Rename norm0/norm1/norm2 to normal/tangent/binormal
2022-04-22 16:54:36 -07:00
Pokechu22
88134a6786
VertexShaderGen: Simplify normal calculation
...
This is a readability change; there should be no functional or performance differences.
2022-04-22 16:51:58 -07:00
Pokechu22
0f92ab380e
Vulkan: Include the info log in the shader compile error panic alert
...
The other backends do this, and it is helpful for quickly identifying errors during development.
2022-04-22 16:38:35 -07:00
Pokechu22
7ae71e643e
Vulkan: Close the output stream on shader compile error before showing the panic alert
...
This fixes the file showing up as 0 bytes in Windows Explorer (although the file would still display properly when opened).
2022-04-22 16:37:43 -07:00
Shawn Hoffman
12cd81bdb3
GCAdapter: don't call libusb_detach_kernel_driver on apple
2022-04-22 09:56:47 -07:00
Shawn Hoffman
5cd3cf9072
GCAdapter: fix retval check of libusb_detach_kernel_driver
2022-04-22 09:56:47 -07:00
Shawn Hoffman
978c90845b
GCAdapter: move libusb context teardown last
2022-04-22 09:56:47 -07:00
Shawn Hoffman
1c9dfb7bb6
GCAdapter: some macro cleanup
2022-04-22 09:56:47 -07:00
Shawn Hoffman
f52d94832e
GCAdapter: set read/write thread names
2022-04-22 07:12:09 -07:00
OatmealDome
259a5fc7c0
DriverDetails: Add broken discard with early-Z bug on Apple Silicon GPUs
2022-04-20 14:56:34 -04:00
OatmealDome
e7f5e5172c
DriverDetails: Introduce new VENDOR_APPLE for Apple GPUs
2022-04-19 10:55:27 -04:00
OatmealDome
80dfefb32e
UberShaderPixel: Add support for non-dual source shader blending
2022-04-19 10:55:26 -04:00
OatmealDome
c1d87db6fa
PixelShaderGen: Add support for non-dual source shader blending
2022-04-19 10:55:26 -04:00
OatmealDome
bad0283ff7
VKPipeline: Add shader blending support
2022-04-19 10:55:26 -04:00
Admiral H. Curtiss
ef760ee012
Common/PointerWrap: Prevent reads/writes past the end of the buffer.
2022-04-18 23:48:00 +02:00
Admiral H. Curtiss
853cf4f818
Common/PointerWrap: Hide internals.
2022-04-18 03:41:14 +02:00
TryTwo
cc22f1a558
MemoryWidget add dual views for two separate column types. Force first column to be Hex32.
2022-04-17 00:15:44 -07:00
Pokechu22
f3eff70e2f
Implement ImGui window for scissor rectangles
...
This is mainly for debugging, and is only exposed by manually editing the configuration.
2022-04-16 12:35:00 -07:00
Pokechu22
4d1e1db3c5
Software: Fix scissor rectangle always being block-aligned
2022-04-16 12:35:00 -07:00
Pokechu22
8745d84949
Software: Disable clipping based on xfmem
...
This fixes https://bugs.dolphin-emu.org/issues/12562 , and is also needed for a hardware test of mine.
2022-04-16 12:35:00 -07:00
Pokechu22
925ceab82f
Software: Use new scissor logic
...
Unlike the hardware backends, the software renderer can use multiple scissor rectangles (though this will result in extra rasterization).
2022-04-16 12:34:58 -07:00
Pokechu22
076392a0f6
VideoCommon: Rework scissor handling
...
This increases accuracy, fixing the white rendering in Major Minor's Majestic March. However, the hardware backends can only have one viewport and scissor rectangle at a time, while sometimes multiple are needed to accurately emulate what is happening. If possible, this will need to be fixed later.
2022-04-16 10:26:11 -07:00
Pokechu22
4595b89ad8
VideoCommon: Remove bSupportsOversizedViewports
...
I think this is a relic of D3D9. D3D11 and D3D12 seem to work fine without it. Plus, ViewportCorrectionMatrix just didn't work correctly (at least with the viewports being generated by the new scissor code).
2022-04-16 10:26:11 -07:00
Pokechu22
b85b35d5ea
VideoCommon: Create dedicated structs for scissor pos/offset
2022-04-16 10:26:10 -07:00
Admiral H. Curtiss
0ec3f3a6ae
Merge pull request #10563 from TryTwo/PR_MemoryWidget_Display_Types
...
Debugger MemoryWidget: More display types, use combo box for options
2022-04-16 14:35:29 +02:00
JosJuice
2ef2d4778d
JitArm64: Always lock Q0 in psq_stXX
...
Q0 is used as a scratch register by EmitBackpatchRoutine.
Fixes a vertex explosion in Spider-Man 2 that was uncovered by 20b2300
.
2022-04-16 13:22:36 +02:00
TryTwo
a2aecc3794
Debugger MemoryWidget: More display types, use combo box for display options. Add alignment and riw length options.
2022-04-15 22:00:51 -07:00
Admiral H. Curtiss
0a4805c0b9
Merge pull request #10582 from AdmiralCurtiss/fmt-float
...
Common/StringUtil: Use simpler formatting for floats and doubles.
2022-04-16 03:42:55 +02:00
Scott Mansell
c5c4169bc8
Merge pull request #10255 from Pokechu22/sw-zfreeze
...
Software: Fix zfreeze with CullMode::All
2022-04-15 11:12:49 +12:00
Admiral H. Curtiss
3fdc6cbffe
Merge pull request #10486 from ttttcrngyblflpp/negative-axis-scaling
...
Make pos/neg analog axes symmetrical
2022-04-13 12:18:41 +02:00
Admiral H. Curtiss
5c687fc2a3
Common/StringUtil: Use simpler formatting for floats and doubles.
2022-04-12 23:35:19 +02:00