Commit Graph

2331 Commits

Author SHA1 Message Date
Sage King f0454ab2fa Added double click to add expressions when mapping 2022-05-21 14:08:49 -06: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
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 642a1c1348 MainWindow: Replace WARN_LOG with WARN_LOG_FMT 2022-05-19 12:41:57 -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 46bcdc4372 Rename CP and XF normal component count enums and update their descriptions 2022-05-18 14:43:14 -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
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
Shawn Hoffman 7b8e6c5b36 fmt: do not define uint type in global namespace 2022-05-10 21:17:10 -07:00
Admiral H. Curtiss 828ce0f3cf
Qt/MemoryViewWidget: Fix resizing. 2022-05-10 12:35:37 +02: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
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 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
spycrab 004e8a80b2 Add support for building against Qt 6 2022-05-02 22:39:33 -07: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
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
Admiral H. Curtiss 26f9c8b847
Qt/MemoryWidget: Don't force a fixed size for the sidebar. 2022-04-24 05:24:20 +02:00
TryTwo a7111e3910 Dual View any size. 2022-04-23 02:46:25 -07: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
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
EternityShack c5b0b92513 MemoryWidget: Load Files to Memory 2022-04-10 21:02:33 -05:00
Pokechu22 4e9a314776 Round viewport coordinates when vertex rounding is enabled
This should fix https://bugs.dolphin-emu.org/issues/9105
2022-04-08 18:30:59 -07:00
Pokechu22 f6ab317374 Fix typo (GFX_HACK_VERTEX_ROUDING -> GFX_HACK_VERTEX_ROUNDING) 2022-04-08 18:30:59 -07:00
Mai M 91192efe59
Merge pull request #10573 from AdmiralCurtiss/pr10472
DolphinQt/HacksWidget: Re-enable texture accuracy slider if it was disabled because of a custom value.
2022-04-08 21:24:59 -04:00
3t13nn3 5516d468ce
DolphinQt/HacksWidget: Re-enable texture accuracy slider if it was disabled because of a custom value.
Fixes https://bugs.dolphin-emu.org/issues/12771
2022-04-09 03:01:10 +02:00
Mai M 004e834c14
Merge pull request #10558 from shuffle2/lang
windows: simplify handling of gettext
2022-04-08 20:51:36 -04:00
Admiral H. Curtiss 23508cafb2
Merge pull request #7675 from TryTwo/Debugger_Code_Features
Debugger: Get target memory in load/store instructions
2022-04-08 05:28:22 +02:00
JosJuice 6a326a9f73
Merge pull request #10544 from AdmiralCurtiss/default-font-size-workaround
Qt: Set font size for default debug font.
2022-04-07 20:59:17 +02:00
Sepalani 5b658e77df MemoryWidget: Fix preview of zero as float/double 2022-04-07 11:55:23 +04:00
Admiral H. Curtiss 368342cb9b
Merge pull request #10528 from TryTwo/PR_Debugger_Memory_Input_Types
Debugger: MemoryWidget: add float and integer input types. Add input preview.
2022-04-07 02:13:21 +02:00
TryTwo ed96b8e308 Debugger MemoryWidget: add float and integer inputs. Add input preview. Change input logic. Use combobox for options. 2022-04-06 16:20:55 -07:00
Shawn Hoffman db4d81b9a8 windows: simplify handling of gettext
fixes binplace on first build
2022-04-02 15:24:46 -07:00
Dentomologist c8d953d0c6 Updater: Fix manual update check when autoupdate is disabled 2022-04-02 12:22:06 -07:00
Admiral H. Curtiss 113fdc959d
Merge pull request #10534 from AdmiralCurtiss/more-cheat-search-qol
DolphinQt: More Cheat Search QoL
2022-04-02 15:17:15 +02:00
Admiral H. Curtiss 25c173cefc
Merge pull request #8732 from dreamsyntax/debugger-function-differencing
Qt/Debugger CodeWidget: Record and find specific functions by differencing
2022-04-02 05:42:33 +02:00
Admiral H. Curtiss 1942629d9a
DolphinQt/CheatSearchWidget: Drop whitespace when parsing integers and floats from the user. 2022-03-31 05:40:51 +02:00
Admiral H. Curtiss 7f2fed0f68
DolphinQt/CheatsManager: Don't leak closed cheat search tabs. 2022-03-31 05:40:51 +02:00
Admiral H. Curtiss 48c4ebeee0
DolphinQt/CheatSearchWidget: Remember state of Hex checkboxes across sessions. 2022-03-31 05:40:51 +02:00
Admiral H. Curtiss 1ad7aac008
Qt: Set font size for default debug font. 2022-03-31 05:28:39 +02:00
Admiral H. Curtiss 4957b2edb9
Merge pull request #10530 from shuffle2/win-ffmpeg
windows: move ffmpeg bins to submodule
2022-03-31 05:24:00 +02:00
Admiral H. Curtiss cc3f8204da
Merge pull request #10542 from TryTwo/PR_MemoryViewWidget_Spacing
Debugger MemoryViewWidget: fixed, tighter spacing
2022-03-30 22:53:05 +02:00
Shawn Hoffman 09432ef098 windows: move ffmpeg bins to submodule
udpate ffmpeg to b1cbeabf5e4b3234e895a58bafa371bfb792baf0
enable ffmpeg on arm64
2022-03-29 17:27:46 -07:00
TryTwo 8f85e384c3 Debugger MemoryViewWidget: fixed, tighter spacing 2022-03-29 14:16:25 -07:00
Admiral H. Curtiss b379df360a
Merge pull request #10497 from martinD2014/master
Change the highlighted button on each window
2022-03-27 16:05:23 +02:00
dreamsyntax 88a1acdfc0 implement CodeDiffTool Feature
Add Diff button to CodeWidget
Add Code Diff Tool window for recording and differencing functions. Allows finding specific functions based on when they run.
2022-03-26 11:41:08 -07:00
Sepalani d5916fd14c MemoryWidget: Add negative offset search support 2022-03-24 23:06:25 +04:00
Admiral H. Curtiss c661a75961
DolphinQt: Set emulation speed setting only when the combobox is actually touched. 2022-03-22 19:19:47 +01:00
Admiral H. Curtiss 7b0d5f2df3
Merge pull request #10491 from Minty-Meeo/dolphin-tool-more-stuff
More dolphin-tool features and options
2022-03-20 05:43:53 +01:00
Minty-Meeo deba9ce256 Added a way to check Block Size, Compression Method, and Compression Level flags to dolphin-tool
New dolphin-tool command: "header"
-b / --block_size
-c / --compression
-l / --compression_level

Informative RVZ/WIA header2 value "compression_level" is now a s32 instead of a u32, because negative compression is a thing.

Speaking of, it is now possible to use negative compression levels in dolphin-tool's convert command (not the GUI, though).
2022-03-19 17:13:28 -05:00
Admiral H. Curtiss f5657d0a83
Merge pull request #10174 from dreamsyntax/panic-handles-restore-messages
DolphinQt: Add "Reset Ignore Panic Handler" MenuBar Option
2022-03-19 16:52:20 +01:00
TryTwo 53cf78d413 Gekko constistancy changes. Add context item to codeview to show or copy a load/store target memory address from instructions at or near PC when paused. 2022-03-17 12:53:38 -07:00
Léo Lam bf261f6144
Merge pull request #10493 from jordan-woyak/netplay-show-traversal-external-port
NetPlayDialog: Display external IP/Port as seen by the traversal server.
2022-03-15 16:03:28 +01:00
Léo Lam e10967e918
Merge pull request #10502 from Pokechu22/defer-gcadapter
GCAdapter: Defer initialization until MainWindow::InitControllers
2022-03-15 16:00:28 +01:00
Léo Lam da6f86f381
Merge pull request #10496 from JosJuice/mappingcommon-split
Move parts of MappingCommon out of DolphinQt
2022-03-15 15:54:04 +01:00
Jordan Woyak c058c8e1a6 NetPlayDialog: Display external IP/Port as seen by the traversal server when it's used. 2022-03-15 01:56:16 -05:00
Pokechu22 37806472e1 GCAdapter: Defer initialization until MainWindow::InitControllers
If libusb fails to initialize, an assertion fails, but if that happens before the main window is created, then Dolphin just dies.  Now, the panic alert is properly shown and the user can ignore it.
2022-03-10 10:35:45 -08:00
Martin a4d031cfda Add NonDefaultQPushButton to set autoDefault of buttons to false 2022-03-08 08:51:29 +01:00
Shawn Hoffman a546c451b7 windows: wrap all main funcs with utf8 conversions
fixes 12858
2022-03-07 23:24:21 -08:00
JosJuice 1bc057614e Move parts of MappingCommon out of DolphinQt
Some of the functions in MappingCommon would be useful to use on
mobile in the future.
2022-03-06 14:30:49 +01:00
Léo Lam ebfee3b2de
Merge pull request #10484 from AdmiralCurtiss/general-pane-signalblocker
Qt/GeneralPane: Don't trigger config change events when populating GUI.
2022-03-02 11:59:02 +01:00
Léo Lam 666db19436
Merge pull request #10322 from Starsam80/nand
NANDImporter: Various improvements and cleanup
2022-03-02 11:56:11 +01:00
Pierre Bourdon 8ecfa537a2
Merge pull request #10473 from delroth/autoupdate-fail
Fix manual update check which was hardcoded to "dev" track
2022-03-02 00:10:48 +01:00
Starsam80 643057fea2
NANDImporter: Make a class variable for the NAND root 2022-03-01 15:07:59 -07:00
Admiral H. Curtiss 1fd9a1117e
Qt/GeneralPane: Don't trigger config change events when populating GUI. 2022-02-27 17:56:35 +01:00
Pierre Bourdon 281dfd3e6a
Fix manual update check which was hardcoded to "dev" track 2022-02-23 18:39:28 +01:00
JosJuice 90c576e075 Use config changed callback to detect SD insertion/ejection
This saves the GUI from having to manually call SDIO_EventNotify.
With that out of the way, we can let users change the
"Insert SD Card" setting on Android while a game is running.
2022-02-20 10:55:55 +01:00
Léo Lam 0c78167404
Merge pull request #10443 from JosJuice/port-wiimote-source
Port Wiimote source settings to the new config system
2022-02-18 21:38:02 +01:00
JosJuice aff45c91fc Port Wiimote source settings to the new config system
This lets us finally get rid of BootManager's ConfigCache!
2022-02-18 21:27:10 +01:00
JosJuice 9ebfdff6b4
Merge pull request #10423 from Pokechu22/improperly-exclusive-radio-buttons
Fix improperly exclusive radio buttons
2022-02-18 21:20:14 +01:00
JosJuice 35b436bd6b
Merge pull request #10377 from Pokechu22/warning-fixes-jan-2022
Fix several compile warnings on GCC
2022-02-18 21:05:42 +01:00
Dentomologist edbe202aa3 VideoCommon: Convert OptionType to enum class 2022-02-17 10:03:08 -08:00
Pokechu22 50d9349926 Fix integer sign difference comparison warnings 2022-02-13 14:38:59 -08:00
Pokechu22 a6d516dc94 Fix shadowing variables in labmdas
GCC generates warnings about these, although the variable being shadowed is not captured by the lambda.
2022-02-13 14:38:59 -08:00
Pokechu22 3b5faf90f3 FifoAnalyzer: Fix "enumeration value ‘NotPresent’ not handled in switch" warning 2022-02-13 14:38:59 -08:00
Pokechu22 f2f9df7541 Remove unused includes of QButtonGroup 2022-02-12 11:40:53 -08:00
Pokechu22 0daee4fe9f CheatSearchFactoryWidget: Set QButtonGroup's parent 2022-02-12 11:40:53 -08:00
Pokechu22 99b3ac21e4 NewBreakpointDialog: Fix improperly behaving radio buttons 2022-02-12 11:40:53 -08:00
Pokechu22 a05dd6b7e6 MemoryWidget: Fix improperly behaving radio buttons 2022-02-12 11:40:53 -08:00
Pokechu22 75cdcd5ac2 FifoPlayer: Add missing call to LoadSettings()
This resulted in the loop checkbox appearing unchecked, even though loop was enabled.
2022-01-17 11:00:13 -08:00
Pokechu22 6e5f4125e3 Use Common::ToLower and Common::ToUpper 2022-01-16 17:00:12 -08:00
Pokechu22 ad9e8d97a9 CMakeLists: Replace tab characters with spaces
This commit only touches CMakeLists in Source and the main one; it doesn't touch them in Externals.
2022-01-16 15:20:40 -08:00
Pokechu22 19ef936e27 Use Slot in GameCubePane 2022-01-16 14:21:33 -08:00
Pokechu22 9109258b85 Use Slot in GCMemcardManager 2022-01-16 14:21:32 -08:00
Pokechu22 777bb4d82c Use Slot in EXI devices 2022-01-16 14:21:28 -08:00
Pokechu22 3f0b23ed2b Create Slot enum class for EXI slots 2022-01-14 20:24:53 -08:00
Pokechu22 fefde0481d Use EnumFormatter to generate names for EXI devices
This simplifies the code in GameCubePane, and allows us to use the EXIDeviceType enum in error messages.
2022-01-14 20:24:53 -08:00
Pokechu22 d354163fbe Replace TEXIDevices with an enum class 2022-01-14 20:24:53 -08:00
Léo Lam 83c5446d85
Fix static initialisation order fiasco issue for Version variables
Fixes a crash that could occur if the static constructor function for
the MainSettings.cpp TU happened to run before the variables in
Common/Version.cpp are initialised. (This is known as the static
initialisation order fiasco.)

By using wrapper functions, those variables are now guaranteed to be
constructed on first use.
2022-01-14 00:04:22 +01:00
JosJuice d445d2ad36 DolphinQt: Improve the earlier panic alert deadlock fix
If the purpose of calling SetFullscreen using RunAsCPUThread is
to make sure that the GPU thread is paused, the fix in ef77872
is faulty when dual core is used and a panic alert comes from
the CPU thread. This change re-adds synchronization for that case.
2022-01-13 22:19:54 +01:00
JosJuice 3367e5e026 DolphinQt: Fix the panic alert deadlock, GPU thread edition
The fix in ef77872 worked for panic alerts from
the CPU thread, but there were still problems with
panic alerts from the GPU thread in dual core mode.
This change attempts to fix those.
2022-01-13 22:19:54 +01:00
Léo Lam 21b9e6a34f
Merge pull request #10355 from Pokechu22/fifo-player-config
FifoPlayer: Store early memory updates option in the config and allow changing loop option at runtime
2022-01-13 14:36:48 +01:00
JMC47 c18abfaecc
Merge pull request #10356 from AdmiralCurtiss/config-port-core-4
Config: Port remaining Core settings to new config system (the rest).
2022-01-11 16:08:19 -05:00
Pokechu22 161c627466 Treewide: Remove unused inclusions of <cinttypes>
Most of these became unneeded when fmt was introduced.
2022-01-09 12:43:11 -08:00
Admiral H. Curtiss 92d2fd9d5f
Config: Port MMU setting to new config system. 2022-01-09 21:29:12 +01:00
Admiral H. Curtiss d8825f5635
Config: Port dual core setting to new config system. 2022-01-09 21:29:11 +01:00
Admiral H. Curtiss 5c325eef38
Config: Port SI device settings to new config system. 2022-01-08 20:08:21 +01:00
Admiral H. Curtiss a0a0bfc5ca
Config: Port EXI device settings to new config system. 2022-01-08 19:57:58 +01:00
Pokechu22 29df17d422 FifoPlayer: Allow changing loop option at runtime
This option has always existed since it's used by FifoCI, but now it can be changed at runtime.  Looping is something that should almost always be on, but it can be useful to turn it off when frame-dumping is enabled so that hundreds of copies of the same frame aren't created.  Before, turning it off required restarting Dolphin.
2022-01-06 19:08:16 -08:00
Pokechu22 575062a612 FifoPlayer: Store early memory updates option in the config
Now, early memory updates is persisted across runs, and can be toggled before starting a fifolog.
2022-01-06 19:02:13 -08:00
Admiral H. Curtiss ed1a1c1fae
Config: Port WiimoteControllerInterface setting to new config system. 2022-01-06 16:13:57 +01:00
Admiral H. Curtiss 2354fb4466
Config: Port WiimoteEnableSpeaker setting to new config system. 2022-01-06 16:13:57 +01:00
Admiral H. Curtiss 8c554d2e64
Config: Port WiimoteContinuousScanning setting to new config system. 2022-01-06 16:13:57 +01:00
Admiral H. Curtiss b2da738c81
Config: Port WiiKeyboard setting to new config system. 2022-01-06 16:13:57 +01:00
Admiral H. Curtiss f19cf1753b
Config: Port WiiSDCard setting to new config system. 2022-01-06 16:13:56 +01:00
Admiral H. Curtiss dc7e7d08ad
Config: Port Fastmem setting to new config system. 2022-01-06 16:13:56 +01:00
Admiral H. Curtiss fb47035f97
Config: Port emulation speed setting to new config system. 2022-01-06 16:13:54 +01:00
Admiral H. Curtiss 0bfffe4095
Config: Port GC Adapter settings to new config system. 2022-01-05 03:25:19 +01:00
Admiral H. Curtiss e08171fa24
Config: Port remaining Core settings to new config system (partial). 2022-01-05 00:54:15 +01:00
Léo Lam 0de008da11
Merge pull request #10332 from AdmiralCurtiss/config-port-general
Config: Port remaining General settings to new config system.
2022-01-03 01:40:37 +01:00
Admiral H. Curtiss d590aa88a4
Config: Port remaining General settings to new config system. 2022-01-01 19:02:45 +01:00
Rafaël Kooi b756dc40bb RenderWidget: Add include to Windows.h
Fixes errors when building with CMake. PCH support is currently broken,
however the code shouldn't have a hard dependency on PCH anyway.
2022-01-01 17:58:20 +01:00
Admiral H. Curtiss d6331c1e71
Config: Port remaining Interface settings to new config system. 2021-12-31 17:40:04 +01:00
Admiral H. Curtiss 247f5d823f
Config: Port USBPassthrough setting to new config system. 2021-12-31 01:15:38 +01:00
Admiral H. Curtiss 526887899e
Config: Port BluetoothPassthrough settings to new config system. 2021-12-30 23:17:19 +01:00
Admiral H. Curtiss 810dcfa0f6
Config: Port Debug settings to new config system. 2021-12-30 22:28:05 +01:00
Admiral H. Curtiss 9c4b2b65b4
Config: Port Input setting to new config system. 2021-12-30 21:50:36 +01:00
Admiral H. Curtiss aa437d9805
Config: Port Movie settings to new config system. 2021-12-30 20:16:17 +01:00
JMC47 1112b2a19e
Merge pull request #10307 from AdmiralCurtiss/config-port-autoupdate
Config: Port AutoUpdate settings to new config system.
2021-12-30 14:12:36 -05:00
Admiral H. Curtiss 96fa0919be
Config: Port AutoUpdate settings to new config system. 2021-12-27 21:19:28 +01:00
Rafaël Kooi d6c9831efd DolphinQt: Fix generation of /external:I flags
Mainly concerns to building with Ninja, as that's what I tested it with.
Originally it would only prepend the first path with `/external:I`,
however all paths in the list have to be prepended with `/external:I`.
The MS documentation seems to support this, as it makes no mention of it
accepting a list.

This is probably the worst way to implement this, I am unfamiliar with
CMake.
2021-12-27 14:31:58 +01:00
JMC47 66411571fa
Merge pull request #10293 from AdmiralCurtiss/config-port-cpu-overclock
Config: Port CPU overclock setting to new config.
2021-12-27 00:16:24 -05:00
Admiral H. Curtiss 5999e9e139
Config: Port GameList settings to new config system. 2021-12-26 23:46:35 +01:00
Admiral H. Curtiss cae4b545bd
Config: Port CPU overclock settings to new config system. 2021-12-25 21:52:50 +01:00
JMC47 32fed91b0d
Merge pull request #9718 from Pokechu22/better-fifo-analyzer-part-3
Fifo analyzer improvements, part 3
2021-12-20 14:27:14 -05:00
Pokechu22 f4f4dbbc63 Switch to the Play / Record tab when fifo playback stops 2021-12-18 15:21:48 -08:00
Pokechu22 f0f12ac8d7 Fifo analyzer: Decode floats in primitive data 2021-12-18 15:21:48 -08:00
Pokechu22 e4605fa399 Fifo analyzer: Create a new object for each EFB copy
Previously, EFB copies would be in the middle of other objects, as objects were only split on primitive data.  A distinct object for each EFB copy makes them easier to spot, but does also mean there are more objects that do nothing when disabled (as disabling an object only skips primitive data, and there is no primitive data for EFB copies).
2021-12-18 15:21:48 -08:00
Pokechu22 b5fd35f951 Refactor OpcodeDecoding and FIFO analyzer to use callbacks 2021-12-18 15:21:36 -08:00
Pokechu22 d5cfac71d0 Refactor object listing code
This also adds the commands after the last primitive data but before the next frame as a unique object; this is mainly just the XFB copy.  It's nice to have these visible, though disabling the object does nothing since only primitive data is disabled and there is no primitive data in this case.
2021-12-18 12:51:56 -08:00
Pokechu22 1914087998 Create and use CPArray enum class 2021-12-18 12:51:56 -08:00
Pokechu22 3aaeb2b9ef Convert OpcodeDecoder::Opcode and OpcodeDecoder::Primitive to enum class 2021-12-18 12:51:56 -08:00
iwubcode 5ecd5f010f Core / DolphinQt: make WFS directory configurable 2021-12-18 01:08:35 -06:00
Admiral H. Curtiss b928900f6e
Core/WiiRoot: Handle the combination of NetPlay and savegame redirects. 2021-12-14 06:15:37 +01:00
Admiral H. Curtiss 005e850ad6
DolphinQt: Add a 'Save as Preset' button to RiivolutionBootWidget. 2021-12-12 21:26:09 +01:00
Admiral H. Curtiss da161faff4
GameList: Show game mod descriptor .json files in game list. 2021-12-12 21:26:09 +01:00
Pokechu22 2025763420 Treewide: Adjust order of includes 2021-12-10 14:49:57 -08:00
Pokechu22 9304fe7124 DolphinQt: Remove 5~5~5~ typos 2021-12-10 13:59:38 -08:00
Pokechu22 ea414b06ef ParallelProgressDialog: Add missing license comment 2021-12-10 13:59:38 -08:00
JMC47 bfddce425d
Merge pull request #10268 from Pokechu22/code-view-widget-clamp-ub
CodeViewWidget: Fix undefined behavior when centered around address 0
2021-12-10 05:59:47 -05:00
JosJuice e0a61ed9a0
Merge pull request #10248 from Filoppi/fix_input_config_default_device_load
Fix default input config default device not being loaded/found
2021-12-09 22:20:55 +01:00
JosJuice d5d21c6533
Merge pull request #10252 from ssdsnake/feature_dolphintool
DolphinTool: Add CLI tool subsystem + commands for verifying and converting RVZ/ISO/WIA/GCZ
2021-12-09 22:20:26 +01:00
Pokechu22 5bcbc8fcef CodeViewWidget: Fix undefined behavior when centered around address 0 2021-12-08 21:42:15 -08:00
Filoppi 125971d9f2 InputCommon: fix default input config default device not being loaded/found
Fixes bug: https://bugs.dolphin-emu.org/issues/12744

Before e1e3db13ba
the ControllerInterface m_devices_mutex was "wrongfully" locked for the whole Initialize() call, which included the first device population refresh,
this has the unwanted (accidental) consequence of often preventing the different pads (GC Pad, Wii Contollers, ...) input configs from loading
until that mutex was released (the input config defaults loading was blocked in EmulatedController::LoadDefaults()), which meant that the devices
population would often have the time to finish adding its first device, which would then be selected as default device (by design, the first device
added to the CI is the default default device, usually the "Keyboard and Mouse" device).

After the commit mentioned above removed the unnecessary m_devices_mutex calls, the default default device would fail to load (be found)
causing the default input mappings, which are specifically written for the default default device on every platform, to not be bound to any
physical device input, breaking input on new dolphin installations (until a user tried to customize the default device manually).

Default devices are now always added synchronously to avoid the problem, and so they should in the future (I added comments and warnings to help with that)
2021-12-05 23:35:47 +02:00
ssdsnake 1aa8a4d46f DolphinTool: CLI utility interface and disc image tools 2021-12-03 15:40:19 -06:00
Scott Mansell 0327bc2ab6
Merge pull request #10256 from malleoz/show-rerecord-count
Renderbase: Show rerecord count
2021-12-03 14:42:10 +13:00
sowens99 e4fed7cce8 Add Rerecord Count display
Simply shows Movie::s_rerecords in the ImGui Movie window
2021-11-30 20:08:29 -05:00
JosJuice 6a1a7efdd5 DolphinQt: Add i18n comment for "Save Game"
It's very easy to assume the "save" in this string is a verb.
2021-11-27 20:27:33 +01:00
Léo Lam aa5cb35c86
Merge pull request #10143 from Pokechu22/png-compression-level
Add option for setting the PNG zlib compression level
2021-11-23 16:40:34 +01:00
Léo Lam e1e3db13ba
Merge pull request #10228 from Filoppi/fix_android_input_deadlock
ControllerInterface: fix UpdateReferences() deadlock
2021-11-23 16:27:03 +01:00
Admiral H. Curtiss 6350c93ae1
NetPlay: Pass Wii FS sync data directly to game boot logic instead of indirectly through globals. 2021-11-22 01:33:46 +01:00
Admiral H. Curtiss 7b776f3769
NetPlay: Refactor game boot code path to allow passing BootSessionData through it. 2021-11-22 00:52:15 +01:00
Admiral H. Curtiss 83ad84061e
Core/Boot: Refactor storage of boot-to-savestate data into a separate class. 2021-11-22 00:35:35 +01:00
Admiral H. Curtiss 8488ff6884
GBA: Add import and export save options to context menu. 2021-11-21 18:08:23 +01:00
Filoppi 1badceb455 ControllerInterface: fix UpdateReferences() deadlock
Removed useless locks to DeviceContainer::m_devices_mutex, as they were all already protected by m_devices_population_mutex.
We have no interest in blocking other threads that were potentially reading devices at the same time so this seems fine.
This simplifies the code, and I've adjusted a few comments which mentioned possible deadlock that should now be totally gone.

The deadlock could have happen if a thread directly called EmulatedController::UpdateReferences(), while another another thread also reached EmulatedController::UpdateReferences() within a call to ControllerInterface::UpdateDevices(), as the mentioned function locked both the DeviceContainer::m_devices_mutex and s_get_state_mutex at the same time.

The deadlock was frequent on game emulation startup on Android, due to the UpdateReferences() call in InputConfig::LoadConfig() and the UI thread triggering calls to ControllerInterface::UpdateDevices().
It could also have happened on Desktop if a user pressed "Refresh Devices" manually in the UI while the input config was loading.

Also brought some UpdateReferences() comments and thread safety fixes from https://github.com/dolphin-emu/dolphin/pull/9489
2021-11-20 16:54:36 +02:00
Pokechu22 94ccf765af Add option for setting the PNG zlib compression level 2021-11-18 13:10:22 -08:00
Pokechu22 95b9941044 Use Fast Texture Sampling by default
This commit changes the default value of Fast Texture Sampling to true, and also moves the setting that controls it to the experimental section of the advanced tab.  This is its own commit so that it can be easily reverted when we want to default to Manual Texture Sampling.

Co-authored-by: JosJuice <josjuice@gmail.com>
2021-11-17 21:29:57 -08:00
Pokechu22 93eea7cb13 VideoCommon: Add option to use old behavior (Fast Texture Sampling)
Co-authored-by: JosJuice <josjuice@gmail.com>
2021-11-17 21:27:32 -08:00
Shawn Hoffman a69adafdd8 msbuild: use /external:anglebrackets
Revert usage of ExternalIncludePath, as that var is specifically
for external includes which do not get scanned for changes.
2021-11-15 00:33:51 -08:00
OatmealDome 2209dc0355 MoltenVK: Use an external project instead of a pre-compiled dylib
Also, update MoltenVK to match Vulkan SDK 1.2.189.
2021-11-13 11:43:23 -08:00
Emmanuel Gil Peyrot 24db6e467a DolphinQt: Fix a -Wunused-result in gcc 11
Also use the correct error check for other similar calls in the same
file, despite nothing being doable on error.
2021-11-02 13:50:21 +01:00
Emmanuel Gil Peyrot 7e39a0405b DolphinQt, VideoBackends: Fix all cases of -Wswitch in gcc 11 2021-11-02 13:50:21 +01:00
Emmanuel Gil Peyrot ab252aedfa Core, DolphinQt, UICommon: Fix all cases of -Wrange-loop-construct in gcc 11 2021-11-02 13:50:21 +01:00
Pokechu22 ef80d51df1 RenderWidget: Change "imgui.h" to <imgui.h>
This was originally intended to fix https://bugs.dolphin-emu.org/issues/12717 but this ended up not being the issue (instead it seems like files just weren't recompiled when imgui was updated due to MSVC weirdness).  Still, using brackets instead of quotes is preferable as this is a library include.
2021-10-29 12:05:21 -07:00
Admiral H. Curtiss 6e814cbb8f
Qt/CheatSearchWidget: Add a checkbox to force parsing a value as hexadecimal. 2021-10-28 02:00:38 +02:00
Admiral H. Curtiss b3e17d2772
Qt/CheatSearchFactoryWidget: Refuse to start standard memory region searches when no game is running because the memory size and console type may not be accurate. 2021-10-28 01:59:52 +02:00
Admiral H. Curtiss d6ad3fbcb5
Qt/CheatsManager: Save and restory geometry. 2021-10-28 01:03:30 +02:00
Léo Lam 7073a90474
Merge pull request #10177 from Dentomologist/gamelist_grid_mode_fix_select_all
GameList: Fix duplicate selections with ctrl+a in grid view
2021-10-25 17:22:58 +02:00
Pokechu22 04d8cdfe88 Convert LOG_TYPE and LOG_LEVELS to enum class 2021-10-24 11:48:36 -07:00
Admiral H. Curtiss dd64c0e423
Core: Deduplicate Riivolution Patch to BootParameters apply logic. 2021-10-24 00:09:08 +02:00
Admiral H. Curtiss a76fdeee93
DolphinQt: Act like Riivolution and pre-select the last selected patch options when launching via the RiivolutionBootWidget. 2021-10-24 00:09:08 +02:00
Admiral H. Curtiss 2d3ed2c3ad
DolphinQt: Add ability to edit the Riivolution XML root directory when launching a patch. 2021-10-24 00:09:08 +02:00
Admiral H. Curtiss 6ec4af7ea4
RiivolutionPatcher: Load external files with a layer of indirection during the patching process to properly resolve the paths given in the XML.
This also may eventually allow loading patches from sources other than the 1:1 expected file structure host file system, such as memory or an archive file.
2021-10-24 00:09:07 +02:00
Admiral H. Curtiss 175f225ac1
DolphinQt: Add ability to start a game with Riivolution patches from the GUI. 2021-10-24 00:09:06 +02:00
Dentomologist 1e4b2daedb GameList: Fix duplicate selections with ctrl+a in grid view
Make grid view use selectedRow() instead of selectedIndexes() to ensure
one selection per game.
2021-10-19 14:50:58 -07:00
dreamsyntax 61a5d3bf74 DolphinQt/MenuBar: add "reset ignore panic handler" button 2021-10-18 15:22:00 -07:00
Léo Lam f0faf3712d
Merge pull request #10171 from malleoz/fix-frame-advance-speed
Fix swapped frame advance speed increase/decrease
2021-10-16 11:36:07 +02:00
Léo Lam 8195d0bda1
Merge pull request #10144 from malleoz/dsp-onion
Port Main.DSP to MainSettings
2021-10-16 11:32:38 +02:00
sowens99 8ea6bef98f Port Main.DSP to MainSettings
While trying to work on adding audiodump support for CLI, I was alerted that it was important to first try moving the DSP configs to the new config before continuing, as that makes it substantially easier to write clean code to add such a feature.

This commit aims to allow for Dolphin to only rely on the new config for DSP-related settings.
2021-10-15 23:24:46 -04:00
sowens99 ea81346fc3 Fix swapped frame advance speed increase/decrease
Frame Advance Speed hotkeys were swapped. This likely occurred because speed and delay are inverses (i.e. a speed increase should DECREASE the delay and vice versa).
2021-10-15 23:22:22 -04:00
Léo Lam 7855e5f73b
Turn MAX_LOGLEVEL into a true constant (and fix self-comparison warning)
This replaces the MAX_LOGLEVEL define with a constexpr variable
in order to fix self-comparison warnings in the logging macros
when compiling with Clang. (Without this change, the log level check
in the logging macros is expanded into something like this:
`if (LINFO <= LINFO)`, which triggers a tautological compare warning.)
2021-10-15 21:51:01 +02:00
Pokechu22 78bfd25964 Fix all uninitialized variable warnings (C26495) 2021-10-13 12:32:16 -07:00
sowens99 2aa400e72f Add option for Never Hide Mouse Cursor
Instead of having a single GUI checkbox for "Always Hide Mouse Cursor",
I have instead opted to use radio buttons so the user can swap between
different states of mouse visibility. "Movement" is the default
behavior, "Never" will hide the mouse cursor the entire time the game is
running, and "Always" will keep the mouse cursor always visible.
2021-10-12 21:04:27 -04:00
sowens99 5145853351 Bug: fix unhide on mouse movement only responding to clicks
Previously the unhide of movement mouse_timer reset occurred within case MouseButtonPress.

Additionally, there was a redundant expression in the if statement for cursor locking.
2021-10-12 20:59:31 -04:00
Léo Lam c746040112
Merge pull request #10154 from malleoz/disable-hotkeys-on-mapping-window
MappingWindow: disable hotkeys while window is active
2021-10-13 01:58:48 +02:00
Léo Lam 0315fcf934
Merge pull request #10155 from malleoz/toggle-hotkeys-on-qfiledialog
Disable hotkeys on static QFileDialog calls
2021-10-13 01:48:31 +02:00
Fletcher Porter 0a7eed71f3 Fix switch warning in RenderWidget
The compiler was throwing a bunch of `-Wswitch` warnings from RenderWidget
because of unhandled branches, so I added a default branch to quiet it.
2021-10-11 17:18:32 -07:00
sowens99 839b04014e Add wrapper function to disable hotkeys for QFileDialog
Previously, if you have "Hotkeys Require Window Focus" disabled, you could repeatedly use the "Open" hotkey, for example, to stack File Open windows over top of each other over and over.

This commit allows the hotkey manager to disable/enable on QFileDialog creation and destruction.
2021-10-09 22:43:56 -04:00
sowens99 530f5ecdd0 MappingWindow: disable hotkeys while window is active
MappingWindow is modal, yet the user can use hotkeys while the window is active. I believe hotkeys should not be recognized while this window is active.
2021-10-07 21:39:52 -04:00
Léo Lam bf6a278c04
Merge pull request #10131 from malleoz/hotkey-syntax-fix
IOWindow: Do not accept on syntax errors
2021-10-06 00:27:06 +02:00
PPLToast e26d2053e2
Update MappingWindow.cpp 2021-10-05 16:53:23 +03:00
Léo Lam 33ffc7aa66
Merge pull request #10146 from JosJuice/nkit-convert-warning
DolphinQt/Android: Add warning when converting NKit files
2021-10-03 21:47:04 +02:00
JosJuice 8f9086f28a DolphinQt: Add i18n comment for "Keep addresses where value in memory"
This string is extremely likely to be mistranslated without the
proper context. Actually, it's probably impossible to translate
this string in a good way to some languages, but I'm not sure how
to solve that. Let's at least add an i18 comment for now.
2021-10-03 16:12:37 +02:00
JosJuice 9bb85ca706 DolphinQt/Android: Add warning when converting NKit files
Yes, that's right! It's time to add even more NKit warnings,
because users still don't understand what NKit is or how it works!

More specifically, some users seem to be under the impression that
converting an NKit file to for instance RVZ using Dolphin's convert
feature will result in a normal RVZ file, when it in fact results in
an NKit RVZ file (since NKit is not a container format in the sense
that GCZ/WIA/RVZ/WBFS/CISO is, but rather a kind of trimmed ISO).
I can hardly blame users for not knowing this, because it's not
intuitive unless you know the technical details of how NKit works.
2021-10-02 11:09:36 +02:00
JosJuice c84c1ac69e
Merge pull request #10124 from malleoz/play-recording-hotkey-support
HotkeyScheduler: add PlayRecording hotkey support
2021-09-29 16:26:56 +02:00
sowens99 51cd92a04c QFileDialog: differentiate between recording export/play
Previously, the file dialog window was ambiguous between saving or loading a .dtm. This commit simply gives a bit more context to differentiate the two windows.
2021-09-28 22:30:19 -04:00
sowens99 556323561c Do not update hotkey assignments on window close
If this commit is not applied, then the previous commit will cause hotkeys to be saved if there is a syntax error when hitting "OK" and the user presses the X to close the window.

This commit only applies changes to hotkey config if no syntax error occurs.
2021-09-27 16:21:28 -04:00
sowens99 242bce27a1 Do not accept on hotkey syntax errors
Previously you could type whatever gibberish you wanted into the formula bar, press OK, and receive a modal syntax error window. Closing the syntax error window would cause the hotkey config window to close as well, and your gibberish would be applied to the hotkey assignment.

This commit requires that a syntax error does not occur before accept() is called.
2021-09-27 14:28:08 -04:00
sowens99 d5845ff281 HotkeyScheduler: add PlayRecording hotkey support
This hotkey was not previously implemented in the scheduler, even though it's present in the hotkey menu.
2021-09-24 11:58:41 -04:00
sowens99 e5051c516f Check for certain hotkeys in game list
There are certain hotkeys that we absolutely want to be able to use
without being in-game. Presently, no hotkeys are recognized unless we
are in-game.

I've identified and moved the following hotkeys to be checked before the
HotkeyScheduler checks to see if the Core is running:

- Open
- Exit
- Start Recording
- Refresh Game List

Note that Play Recording should also be implemented here, however it
looks like there is no signal for a PlayRecording() function, so this
will have to be handled in a later PR once that signal is created and
implemented.
2021-09-23 10:46:04 -04:00
Léo Lam 22f7c07caf
Merge pull request #10081 from sepalani/mem-hex0
MemoryWidget: Simplify the search logic
2021-09-20 22:17:20 +02:00
sowens99 3bc9f66336 Inscribe StickWidget ellipse in square
Previously, it was not clear where the boundary of the StickWidget was when interacting outside of the circle. This aims to restore the gray square present in the Wx-era.
2021-09-20 13:18:13 -04:00
Sepalani 94cba46467 MemoryWidget: Simplify the search logic
Fix leading nul bytes being ignored in hex search
2021-09-20 20:46:26 +04:00
Léo Lam 29d236068c
Merge pull request #10104 from AdmiralCurtiss/cheats-manager-ux
Cheats Manager UX improvements.
2021-09-20 14:30:04 +02:00
JosJuice 1a5e0c2084 DolphinQt: Reduce latency of TAS input's controller input passthrough
Fixes https://bugs.dolphin-emu.org/issues/12676.

Needs testing to see if this impacts performance when controller
inputs are changing.
2021-09-19 17:08:10 +02:00
JosJuice 0a973ddcbb DolphinQt: Don't update NetworkWidget when hidden
Like 92a655c but for NetworkWidget (which was added later).
2021-09-18 14:41:11 +02:00
Admiral H. Curtiss c40e8ee3a8
Qt/CheatsManager: Show disabled AR and Gecko tabs when no game is running. 2021-09-16 08:01:40 +02:00
Admiral H. Curtiss dd9047f7c5
Qt/GeckoCodeWidget: Disable functionality if no game id is given. 2021-09-16 08:01:40 +02:00
Admiral H. Curtiss a4b1ea3d70
Qt/ARCodeWidget: Disable functionality if no game id is given. 2021-09-16 08:01:40 +02:00
Admiral H. Curtiss aa2d089d1b
Qt/MenuBar: Allow opening Cheats Manager regardless of emulation state and configuration. 2021-09-16 08:01:26 +02:00
Admiral H. Curtiss aee6e45386
Qt/CheatsManager: Let the 'Configure Dolphin' button shown in the Cheats Manager when Cheats are disabled actually open the settings. 2021-09-16 08:01:12 +02:00
Admiral H. Curtiss 55397b6d52 DolphinQt: Rewrite cheat search GUI. 2021-09-15 19:05:49 +02:00
JosJuice 5ea121eeb5 Revert "Revert "DolphinQt: Minor consistency fixes for the Settings window""
This reverts commit e376a985e4.

A beta build has been released now, so there's no reason to keep
it reverted anymore.
2021-09-08 22:09:19 +02:00
JosJuice 52304df943
Merge pull request #10011 from JosJuice/android-cheats-preparation
Split out code for serializing/deserializing cheat lines
2021-09-08 21:36:56 +02:00
JosJuice 2a22367211
Merge pull request #10056 from lioncash/qtloc
DolphinQt: Minor localization changes
2021-09-08 21:36:46 +02:00
Léo Lam 32c7524f4d
Merge pull request #10021 from Dentomologist/make_windows_tabbar_scroll_buttons_opaque
DolphinQt: Make Windows tab bar scroll buttons opaque
2021-08-31 19:18:03 +02:00
Dentomologist 1fa1e7135c DolphinQt: Make Windows tab bar scroll buttons opaque 2021-08-31 08:33:00 -07:00
JosJuice e376a985e4 Revert "DolphinQt: Minor consistency fixes for the Settings window"
This reverts commit 9d45bac175.
2021-08-31 09:15:03 +02: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
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
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
Lioncash 8c67f13256 ResourcePackManager: Translate unknown author string
This is text that should be translated, since it'll show up as English
for non-English speakers.
2021-08-24 11:31:47 -04:00
Lioncash 89ceef2a8a MainWindow: Use MainWindow variant of tr()
MainWindow derives from QMainWindow, so we can use tr() directly without
the qualification.
2021-08-24 11:13:55 -04:00
Lioncash 47b40698bb MainWindow: Fix typo in resource pack initialization error message
occured -> occurred
2021-08-24 11:10:49 -04:00
Lioncash 75b68c9e96 GBAWidget: Add ellipses for option selections that require more input
Makes the context menu selections consistent with the rest of the
application.
2021-08-24 10:43:34 -04:00
Lioncash a65fcb5e5b ConvertDialog: Provide complete translation string for conversion
Gives the translator full control over the string's localization instead
of only one part of it.
2021-08-24 10:21:53 -04:00
Lioncash 70399955a0 CheatsManager: Make use of plural variant of tr()
Allows translators to specify different translations if the target
languages have pluralization rules that differ from English.
2021-08-24 10:14:59 -04:00
Dentomologist 87924f2ddd DolphinQt: Remove Windows dialog help buttons 2021-08-21 10:53:12 -07:00
Mai M 33154de614
Merge pull request #10039 from OatmealDome/spdx-leftovers
Fix some missed items from SPDX transition
2021-08-17 23:02:32 -04:00
OatmealDome 5c5c3b8856 DolphinQt: Copy COPYING and Licenses directory to output 2021-08-17 22:40:27 -04:00
OatmealDome 0a6ac4d993 AboutDialog: Fix broken license link 2021-08-17 22:34:53 -04:00
Mai M 82969db7de
Merge pull request #10018 from JosJuice/code-allow-name-line
DolphinQt: Allow $ line when entering AR/Gecko code
2021-08-13 13:22:25 -04:00
Mai M e2ccad7f95
Merge pull request #10017 from JosJuice/qt-gecko-notes-lf
DolphinQt: Don't add trailing newline to Gecko notes
2021-08-13 13:21:07 -04:00
Mai M c43f451da8
Merge pull request #10022 from MerryMage/codesign-debug
DolphinQt: Add entitlement to allow debugger to attach in Debug builds
2021-08-13 13:19:59 -04:00
JosJuice 6c908f8ddb DolphinQt: Set default focus for NewBreakpointDialog
I found it a little bit annoying that you can't start typing
the desired address immediately after opening the window.

Also getting rid of the window's ? button while I'm at it.
2021-08-13 10:56:11 +02:00
Merry ec2c10887f DolphinQt: Add entitlement to allow debugger to attach in Debug builds 2021-08-12 15:08:17 +01:00
Léo Lam bfbbed8308
Merge pull request #10019 from JosJuice/port-enable-cheats
Port Enable Cheats to the new config system
2021-08-11 21:20:10 +02:00
JosJuice fa0525f826 Port Enable Cheats to the new config system 2021-08-11 18:07:43 +02:00
JosJuice cda442d2d8 DolphinQt: Allow $ line when entering AR/Gecko code
When you come across a cheat code in a place like the Dolphin
wiki, it's often posted like this:

$16:9 Widescreen
0441187C 3FE38E39

Sometimes users try to paste this in its entirety into the Code
field, which leads to Dolphin reporting an error on the first line.
I think it would be nice to make this a little smoother by having
Dolphin accept having a first line that starts with $.
2021-08-10 19:19:34 +02:00
JosJuice 7eabd9e830 DolphinQt: Don't add trailing newline to Gecko notes
Also fixing a string mistake where the text for AR codes
was copypasted for Gecko codes.
2021-08-10 18:29:54 +02:00
OatmealDome d453390c48 ShaderCompiler: Attach source text to SPIR-V for debuggers like RenderDoc 2021-08-05 03:04:18 -04:00
Tilka 9c65519e79
Merge pull request #9986 from Pokechu22/partition-info
FilesystemWidget: Show more information about partitions
2021-08-04 21:54:07 +01:00
Filippo Tarpini a99932da12
Preserve spaces in mapping preview of control names
PR https://github.com/dolphin-emu/dolphin/pull/9700 removed spaces from within control names, which some user complained about, and their point of view is kind of understandable:
https://bugs.dolphin-emu.org/issues/12605
with this change, only spaces outside (between) control names are trimmed, which are the ones we wanted to trim in the first place.
This will still retain the major advantages from 9700.

Basically, "`Button 1`   +  `Button 2`" was showing as "`Button1`+`Button2`", while it will now show as "`Button 1`+`Button 2`".
2021-08-03 00:04:22 +03:00
Pokechu22 0b86a03438 FilesystemWidget: Show more information about partitions 2021-08-02 12:20:48 -07:00
Tilka 0470be5884
Merge pull request #9972 from Pokechu22/validation-layer
Recompile shaders when 'Enable API Validation Layers' is toggled
2021-07-31 10:16:47 +01:00
Pokechu22 d36282ae61 Qt: Un-maximize GBA widget before resizing it 2021-07-30 18:50:45 -07:00
Pokechu22 087ddfca83 Mention 'Enable API Validation Layers' also enabling symbols for D3D 2021-07-28 21:35:36 -07:00
Pokechu22 6db519793a AdvancedWidget: Fix strange text wrapping 2021-07-28 21:35:36 -07:00
Bonta cfd0f4661f Qt: Implement GBA Interframe Blending 2021-07-24 20:34:26 +02:00
Bonta 6fc060bdca Qt: AlwaysOnTop GBA widget option 2021-07-24 20:00:16 +02:00
Bonta 501868ace0 Qt: Make GBA widgets movable with left click in borderless mode 2021-07-24 19:37:39 +02:00
Bonta 63ff86adff Qt: Borderless GBA windows 2021-07-24 19:12:17 +02:00
Bonta ee64e217f4 Qt/Core: Refactor GBA Core accessors 2021-07-24 14:54:57 +02:00
Mai M 971f110b99
Merge pull request #9937 from Techjar/netplay-split-save-sd-write
NetPlay: Split save and SD card write settings
2021-07-22 21:40:31 -04:00
Mai M 4f87821f21
Merge pull request #9938 from Pokechu22/e-reader-context-menu-item
GBA: Add "Scan e-Reader Card(s)" context menu item
2021-07-22 21:39:10 -04:00
Mai M 885a4646f8
Merge pull request #9941 from JMC47/dsprecommendations
AudioPane: Adjust DSP selection names
2021-07-22 21:37:49 -04:00
JMC47 59e6048200 AudioPane: Adjust DSP selection names 2021-07-22 20:59:35 -04:00
Pokechu22 bcf2c6b9b9 MemoryViewWidget: Remove unnecessary column
This column would end up containing junk data after changing the data type.
2021-07-22 17:39:35 -07:00
Pokechu22 50109d70b6 GBA: Add "Scan e-Reader Card(s)" context menu item 2021-07-22 12:18:07 -07:00
Techjar 3ce5caf887 NetPlay: Split save and SD card write settings
This actually eliminates any setting pertaining to SD cards from the
NetPlay dialog, as it would effectively just be a duplicate of the
setting in the Wii pane, potentially causing confusion.

This also enables save data writing by default, as this is probably
what most players want, and should avoid them losing hours of progress
because they forgot to tick a checkbox.
2021-07-22 01:16:20 -04:00
Bonta b8f0e97c02 Movie: GBA Support 2021-07-13 16:44:04 +02:00
Bonta 45f2461a53 NetPlay: GBA Support 2021-07-13 16:43:59 +02:00
Bonta b73d16a71a Qt/Core: Implement GBA Hotkeys 2021-07-13 16:43:42 +02:00
Bonta d6f86e1754 Qt: Implement GBA host and widget 2021-07-13 16:43:28 +02:00
Bonta 9b80fb7deb Qt: GBA Pad config 2021-07-13 16:43:00 +02:00
Bonta 2d744da68c Core: Add GBA host interface 2021-07-13 16:42:49 +02:00
Bonta 8ee21acf34 Pad: GBA config 2021-07-13 16:42:35 +02:00
Bonta d2353c79ea MappingWidget: Support for boxes with multiple columns 2021-07-13 16:42:31 +02:00
Bonta ec5d557895 Qt: GBA Config dialog 2021-07-13 16:42:23 +02:00
Dentomologist 59292a5c65 GeneralWidget: Convert Adapter tooltip to BalloonTip
Use a BalloonTip to inform the user when their selected backend (i.e.
OpenGL or NULL) doesn't support adapters, instead of using the default
tooltips.
2021-07-09 10:10:36 -07:00
Mai M ffdc8538a1
Merge pull request #9862 from delroth/spdx-tags
Use SPDX for Dolphin licensing info
2021-07-06 01:02:57 -04:00
Léo Lam ccc2b7bd25
Merge pull request #8416 from JosJuice/shader-compilation-names
Change the names for shader compilation settings
2021-07-06 01:41:27 +02:00
Pierre Bourdon 0cf041de24
licensing: various one-off conversions to SPDX tags 2021-07-05 04:35:56 +02:00
Pierre Bourdon e149ad4f0a
treewide: convert GPLv2+ license info to SPDX tags
SPDX standardizes how source code conveys its copyright and licensing
information. See https://spdx.github.io/spdx-spec/1-rationale/ . SPDX
tags are adopted in many large projects, including things like the Linux
kernel.
2021-07-05 04:35:56 +02:00
Léo Lam 0a1f58ad77
Merge pull request #9730 from Dentomologist/remove_audio_pane_stretching
AudioPane: Remove main layout vertical stretching
2021-06-13 10:57:31 +02:00
JosJuice a09d9cf608
Merge pull request #9606 from Filoppi/patch-14
Qt: avoid queuing ConfigChanged() more than once
2021-06-11 18:59:39 +02:00
JMC47 ec8257ebe1
Merge pull request #9794 from Filoppi/fix_input_focus_bug
Fix input focus checks being wrong (issue 12540)
2021-06-07 20:08:09 -04:00
Dentomologist a2e1ddc354 AudioPane: Remove main layout vertical stretching 2021-06-07 15:57:02 -07:00
Léo Lam edc18e60ad
Merge pull request #9785 from Dentomologist/fix_gamelist_grid_zoom_in
GameList: Fix grid mode zoom keybind inconsistency
2021-06-07 14:00:21 +02:00
Filoppi 7c83b745c5 Qt: fix input focus checks being wrong
When rendering to main and going full screen, we aren't using the main window handle
as the code assumed, but the other, detached, render widget.
2021-06-07 14:35:59 +03:00
Filoppi 83ea16f402 Qt: Fix IOWindow keeping a shared ptr to devices even after them being removed by the ControllerInterface
this prevented some devices from being recreated correctly, as they were exclusive (e.g. DInput Joysticks)

This is achieved by calling Settings::ReleaseDevices(), which releases all the UI devices shared ptrs.
If we are the host (Qt) thread, DevicesChanged() is now called in line, to avoid devices being hanged onto by the UI.
For this, I had to add a method to check whether we are the Host Thread to Qt.

Avoid calling ControllerInterface::RefreshDevices() from the CPU thread if the emulation is running
and we manually refresh devices from Qt, as that is not necessary anymore.

Refactored the way IOWindow lists devices to make it clearer and hold onto disconnected devices.
There were so many issues with the previous code:
-Devices changes would not be reflected until the window was re-opened
-If there was no default device, it would fail to select the device at index 0
-It could have crashed if we had 0 devices
-The default device was not highlighted as such
2021-06-07 11:48:30 +03:00
Admiral H. Curtiss 441d304317 CheatsManager: Use game information directly from SConfig, and only recreate widgets if game changes. 2021-06-06 21:56:34 +02:00
Admiral H. Curtiss 414e0f4598 GeckoCodeWidget: Take game ID and revision directly instead of through GameFile. 2021-06-06 21:25:37 +02:00
Admiral H. Curtiss 1fbe56210a ARCodeWidget: Take game ID and revision directly instead of through GameFile. 2021-06-06 21:23:17 +02:00
Dentomologist 7a6098a7f6 GameList: Fix grid mode zoom keybind inconsistency
Add keybind to make 'control plus' zoom in as per convention, and also
'control shift minus' zoom out to maintain consistency.
2021-06-06 09:21:41 -07:00
JMC47 45a5c9cc04
Merge pull request #9697 from Filoppi/cursor_locking
Implement Cursor Locking and input focus checks for it
2021-05-27 11:42:35 -04:00
Filoppi 3c7c2dfaa1 Implement Cursor Locking and new input focus checks for it 2021-05-27 10:31:12 +03:00
Scott Mansell 37e532322b Port dump XFB option to Qt UI.
Looks like the option was added to the Wx UI at commit 198d3b69, which
was a few months after the advancedWidget was originally ported from
Wx to Qt, but before anyone was actually using Qt.
2021-05-27 12:48:36 +12:00
Léo Lam 51671921c4
Merge pull request #9441 from skylersaleh/master
Apple M1 Support for MacOS
2021-05-24 12:39:01 +02:00
Filoppi 93e3e691f9 Expose Control Expression variables to mappings UI
-add a way to reset their value (from the mappings UI)
-fix "memory leak" where they would never be cleaned,
one would be created every time you wrote a character after a "$"
-fix ability to create variables with an empty string by just writing "$" (+added error for it)
-Add $ operator to the UI operators list, to expose this functionality even more
2021-05-24 02:38:06 +03:00
JMC47 975f8e2a25
Merge pull request #9700 from Filoppi/simplify_mappings_preview
Simplify the preview of control mappings by removing the device path from controls
2021-05-23 14:44:38 -04:00
Techjar a33593baf7 Qt/GeneralPane: Refresh widget state on config change
This fixes a nasty issue where you can change the Dual Core setting
during emulation, if it has been overridden by GameINI or NetPlay, by
simply changing any of the non-disabled settings. This is because
changing any of the settings will write all of them to the config.

This issue is particularly nasty because managing to disable Dual Core
during emulation, and then stopping it, results in the emulator core
being totally deadlocked. It's impossible to recover from this state,
and Dolphin will remain as a zombie process on the system, consuming
resources and holding locks, until forcibly killed.
2021-05-23 01:39:35 -04:00
Skyler Saleh 8cb86e7ae0 Apple M1: Enable hardened runtime
- Fixed error that was causing the hardened runtime from being enabled
- Refactored BuildMacOSUniversalBinary.py based on code style recommendations
2021-05-22 15:25:18 -07:00
Skyler Saleh 948764d37b Apple M1: Build, Analytics, and Memory Management
Analytics:
- Incorporated fix to allow the full set of analytics that was recommended by
  spotlightishere

BuildMacOSUniversalBinary:
- The x86_64 slice for a universal binary is now built for 10.12
- The universal binary build script now can be configured though command line
  options instead of modifying the script itself.
- os.system calls were replaced with equivalent subprocess calls
- Formatting was reworked to be more PEP 8 compliant
- The script was refactored to make it more modular
- The com.apple.security.cs.disable-library-validation entitlement was removed

Memory Management:
- Changed the JITPageWrite*Execute*() functions to incorporate support for
  nesting

Other:
- Fixed several small lint errors
- Fixed doc and formatting mistakes
- Several small refactors to make things clearer
2021-05-22 15:25:17 -07:00
Skyler Saleh 4ecb3084b7 Apple M1 Support for MacOS
This commit adds support for compiling Dolphin for ARM on MacOS so that it can
run natively on the M1 processors without running through Rosseta2 emulation
providing a 30-50% performance speedup and less hitches from Rosseta2.

It consists of several key changes:

- Adding support for W^X allocation(MAP_JIT) for the ARM JIT
- Adding the machine context and config info to identify the M1 processor
- Additions to the build system and docs to support building universal binaries
- Adding code signing entitlements to access the MAP_JIT functionality
- Updating the MoltenVK libvulkan.dylib to a newer version with M1 support
2021-05-22 15:25:17 -07:00
Mai M 9312e45cbe
Merge pull request #9687 from Dentomologist/fix_config_descriptions_grammar
Fix config descriptions grammar
2021-05-20 11:15:25 -04:00
Mai M fb43aaf513
Merge pull request #9720 from Techjar/move-netsettings
NetPlay: Move NetSettings initialization to backend
2021-05-20 10:19:03 -04:00
JosJuice a29660a2c7 Fixes to translatable strings
Sending an empty string to the translation system will not
result in getting an empty string back, but rather a description
of the currently loaded translations file. So empty strings
should not be marked as translatable.

Also adding some i18n comments and rewording a string I thought
was hard to understand.
2021-05-20 11:35:01 +02:00
Filippo Tarpini e6057c5f62 Qt: avoid queuing ConfigChanged() more than once 2021-05-20 00:30:14 +03:00
Techjar 171aad50cc NetPlay: Move NetSettings initialization to backend
It doesn't really belong in frontend code, and this change will make it
easier to eventually support NetPlay on other UI frameworks.
2021-05-19 06:34:24 -04:00
JMC47 736de8abf6
Merge pull request #9527 from sepalani/watch-items
WatchWidget: Add new/delete/clear toolbar items
2021-05-18 04:08:58 -04:00
JMC47 678e035126
Merge pull request #9678 from Filoppi/tooltips_style
Make all Qt ToolTips look similar to BalloonTips
2021-05-17 16:40:49 -04:00
iwubcode 04a635e884 DolphinQt: fix Visual Studio warning about 'assignment within conditional expression' 2021-05-15 14:39:03 -05:00
iwubcode 05b1566e3f DolphinQt: don't propagate warnings in the header to Dolphin when building with Visual Studio through CMake 2021-05-15 14:39:03 -05:00
Mat M d74a1068b8
Merge pull request #9540 from Pokechu22/better-fifo-analyzer-part-2
Fifo analyzer quality of life improvements
2021-05-14 15:51:53 -04:00
JMC47 16e91172b1
Merge pull request #9668 from leoetlino/windows-cmake-fixes
CMake: minor Windows fixes
2021-05-14 08:22:11 -04:00
Scott Mansell 9f91fb6447
Merge pull request #9688 from Filoppi/input_cleanup
Input cleanup
2021-05-14 20:51:33 +12:00
Dentomologist 5a688b74a7 GeneralWidget: Fix Backend description grammar
Unify Backend description string for Windows and other platforms.
2021-05-12 10:50:10 -07:00
Dentomologist b9c1f4921c GeneralWidget: Fix Log Rendertime description grammar 2021-05-12 10:50:10 -07:00
Filoppi f3ffac0058 Qt: add tooltip to MappingBool
Tooltip code is identical to MappingDouble and the tooltips (UI description)
are present in the underlying setting object.
2021-05-12 18:27:24 +03:00
Filoppi f4fec42165 Add mixed comments to input code, make some tooltip clearer 2021-05-12 18:27:23 +03:00
Filoppi 0d23acc831 Qt: simplify the preview of control mappings/expressions by removing their device path
and replacing it with a ":" prefix. Also remove white spaces and \n \t \r.

bugfix: fix EmulatedController::GetStateLock() not being aquired when reading the
expression reference
bugfix: MappingButton::UpdateIndicator() calling State(0) on outputs, breaking ongoing
rumbles if a game was running
Improvement: make expressions previews appear in Italic if they failed to parse correctly
2021-05-11 12:20:37 +03:00
Pokechu22 77b1cca987 Separate vertex components by spaces 2021-05-07 15:42:26 -07:00
Pokechu22 73f4e57006 Add name and description for primitives 2021-05-07 15:42:26 -07:00
Pokechu22 df77a687e8 Add descriptions for GX_LOAD_INDX_A/B/C/D 2021-05-07 15:42:26 -07:00
Pokechu22 1a3d2c3211 Coalesce NOPs 2021-05-07 15:42:25 -07:00
Pokechu22 2ddf2c3ba2 Update and clear the description on each object change
Since the description updating is tied to the selection changing on the detail list, and the detail list is recreated on each object change, behavior was somewhat broken.  Clearing the list changed the current row to zero, but nothing else (particularly m_object_data_offsets) had been updated, so the description was not necessarily correct (this is easier to observe now since the vertex data is at the end, so it's easier to get different lengths of register updates).  Furthermore, subsequent clears did not update the current row since there was no visible selection, so it only changed the description once.  The current row is now always set to zero, which forces an update (and also scrolls the list back to the top).  The presence of FRAME_ROLE and OBJECT_ROLE are also checked so that the description is cleared if no object is selected.
2021-05-07 15:42:22 -07:00
Pokechu22 dbacf68b79 Improve FIFO analyzer search function
- Only one search result is generated per command/line, even if there are multiple matches in that line.
- Pressing enter on the edit field begins a search, just like clicking the begin button.
- The next and previous buttons are disabled until a search is begun.
- The search results are cleared when changing objects or frames.
- The previous button once again works (a regression from the previous commit), and the register updates and graphics data for the correct object are searched.
- currentRow() never returns -1, so checking that is unnecessary (and misleading).
- The 'Invalid search parameters (no object selected)' previously never showed up before because FRAME_ROLE is present if and only if OBJECT_ROLE is present.
2021-05-07 15:42:21 -07:00
Pokechu22 1dc3ff5879 Show register updates before primitive updates
This also shows the register updates for object 0, which were previously not visible(!)
2021-05-07 15:42:20 -07:00
Pokechu22 83f7c41e31 Make the FIFO Player a separate window
This way, it can be focused with the render window behind it, instead of having the main window show up and cover the render window.  This is useful for adjusting the object range, among other things.
2021-05-07 15:42:19 -07:00
Pokechu22 05bd15a928 Clear m_object_data_offsets first and require it before UpdateDescription
It still tries to update the description on clearing, potentially with bad data.
2021-05-07 15:42:19 -07:00
Pokechu22 28b71c65af Fix same object count being used for all frames in the FIFO analyzer
If the number of objects varied, this would result in either missing objects on some frames, or too many objects on some frames; the latter case could cause crashes.  Since it used the current frame to get the count, if the FIFO is started before the FIFO analyzer is opened, then the current frame is effectively random, making it hard to reproduce consistently.

This issue has existed since the FIFO analyzer was implemented for Qt.
2021-05-07 15:42:18 -07:00
Pokechu22 a557230dea Fix crash when attempting to analyze a FIFO after stopping playback 2021-05-07 15:42:18 -07:00
Pokechu22 58333d6feb Make FIFO frame count inclusive
The 'zero frames in the range' check can be removed because now there is always at least 1 frame; of course that might be the same frame over and over again, but that's still useful for e.g. Free Look (and the 1 frame repeating effect already occurred when frame count was exclusive).
2021-05-07 15:42:18 -07:00
Pokechu22 263ca79aae Adjust FIFO player object ranges
A single object can be selected instead of 2 (it was already inclusive internally), and the maximum value is the highest number of objects in any frame (minus 1) to reduce jank when multiple frames are being played back.
2021-05-07 15:42:17 -07:00
Pokechu22 5ebe63b175 Reset the from frame/object to 0 on starting FIFO playback
Now that this is only called when playback actually starts (and not on unpausing), this change makes the experience a bit better (no more missing objects from not having reset the from object after changing FIFOs).
2021-05-07 15:42:17 -07:00
Pokechu22 3436a92ea5 Don't reset the FIFO frame/object limit when unpausing 2021-05-07 15:42:17 -07:00
Léo Lam 049b92b7ef
Merge pull request #9417 from Filoppi/input-1
Fix FPS counter and Game Window speed % breaking on pause/unpause
2021-05-07 15:08:01 +02:00
Léo Lam 8547de2593
Merge pull request #9615 from Dentomologist/updater_documentation
Updater: Add code documentation
2021-05-07 15:05:14 +02:00
Filoppi 818672b585 Fix FPS counter and Game Window speed % breaking on pause/unpause
-Add pause state to FPSCounter.
-Add ability to have more than one "OnStateChanged" callback in core.
-Add GetActualEmulationSpeed() to Core. Returns 1 by default. It's used by my input PRs.
2021-05-06 01:10:04 +03:00
JMC47 21113e5839 This removes a delay for input mapping.
It was causing more harm than good for users.  Anyone doing complex
expressions is already using the advanced editor for more control over
it.
2021-05-02 15:27:11 -04:00
Léo Lam ade9d6c954
Merge pull request #9679 from JosJuice/disable-verify
DolphinQt: Disable verify button when emulation is running
2021-05-02 10:52:46 +02:00
JosJuice 55ef1069f1 DolphinQt: Disable verify button when emulation is running
Verifying a Wii game creates an instance of IOS, and Dolphin
can't handle more than one instance of IOS at the same time.
Properly supporting it is probably more effort than it's worth.

Fixes https://bugs.dolphin-emu.org/issues/12494.
2021-04-28 21:58:07 +02:00
Filoppi 4f53adc331 Qt: make all tooltips look similar to balloon tips (and share parts of their code) 2021-04-28 21:20:39 +03:00
Léo Lam 20301592ad
Merge pull request #9677 from iwubcode/profile-drop-down
DolphinQt: fix input profile drop down not resizing
2021-04-27 14:01:12 +02:00
Léo Lam ae67a9382b
CMake: Put the *.mo files directly in the correct output dir
Avoids the need to copy the *.mo files manually *and* more importantly
this ensures that the mo files are always recreated if the build
output directory is cleared.
2021-04-27 12:54:18 +02:00
Léo Lam e71aef6768
CMake: Ask windeployqt not to copy DLLs that are unnecessary
* no-system-d3d-compiler: d3dcompiler_47.dll
* no-angle, no-opengl-sw: libEGL.dll, libGLESv2.dll
2021-04-27 12:54:18 +02:00
Léo Lam f6b8d4758e
CMake: Copy license.txt to output folder to match existing Win builds 2021-04-27 12:54:18 +02:00
iwubcode 626c686fee
DolphinQt: update device drop down size policy so that the input profile resizes properly
This also keeps the device profile at a minimum so that it doesn't
completely disappear (which was originally why it was changed to expanding)
2021-04-27 12:50:45 +02:00
Léo Lam 219f66c6e9
Merge pull request #9672 from JosJuice/jit-naming-scheme
DolphinQt/Android: Unify the JIT naming scheme
2021-04-27 12:00:23 +02:00
Léo Lam 08215cc975
DolphinQt: Get rid of an extraneous colon in About dialog 2021-04-27 00:24:24 +02:00
JosJuice a2c8050eba DolphinQt/Android: Unify the JIT naming scheme
I think the AArch64 JIT has come far enough that it doesn't have to
be called experimental anymore.

I'm also labeling the x86-64 JIT as x86-64 for consistence with the
AArch64 JIT. This will especially be helpful if we start supporting
AArch64 on macOS, as AArch64 macOS can run both the x86-64 JIT and
the AArch64 JIT depending on whether you enable Rosetta 2.
2021-04-25 17:19:50 +02:00
Dentomologist e0a8d931fc Updater: Add code documentation Markdown file
Add docs/autoupdate_overview.md which gives an overview of the update
process, and comments pointing to it in autoupdate related files.
2021-04-13 15:37:31 -07:00
Léo Lam 336518049d
WiiUtils: Add helper functions to get emulated/real Bluetooth device
This adds a function to get the emulated or real Bluetooth device for
an active emulation instance. This lets us deduplicate all the
`ios->GetDeviceByName("/dev/usb/oh1/57e/305")` calls that are currently
scattered in the codebase and ensures Bluetooth passthrough is being
handled correctly.

This also fixes the broken check in WiimoteCommon::UpdateSource.
There was a confusion between "emulated Bluetooth" (as opposed to
"real Bluetooth" aka Bluetooth passthrough) and "emulated Wiimote".
2021-04-12 18:16:56 +02:00
Léo Lam 136f59b434
DolphinQt: Fix latent build error on Windows 2021-04-12 18:16:56 +02:00
JosJuice 05a37746b6 Change the names for shader compilation settings 2021-04-10 12:46:49 +02:00
Pokechu22 dad309d365 Disable ICache emulation for some games
Specifically, 'Scooby-Doo! Mystery Mayhem', 'Scooby-Doo! Unmasked', 'Ed, Edd n Eddy: The Mis-Edventures', and the Wii version of 'Happy Feet'.

The JIT cache causes problems with emulated icache invalidation in these games, resulting in areas failing to load.
2021-04-06 12:44:10 -07:00
Léo Lam e89ae71cec
Merge pull request #9388 from JosJuice/default-locale
Set console's default language/country/region based on computer settings
2021-04-06 12:34:58 +02:00
Léo Lam a1ee6ace71
Merge pull request #9620 from Dentomologist/convert_gamelist_col_to_enum_class
Convert GameList col enum to enum class
2021-04-06 12:08:15 +02:00
Pokechu22 004dfd1586 Replace uses of cassert with Common/Assert.h 2021-04-02 10:18:18 -07:00
Dentomologist 601dcfaefd GameList: Rename Column enum members
Remove COL_ prefix and change to TitleCase
2021-04-02 09:17:27 -07:00
Dentomologist b8bd877a41 GameList: Convert columns to enum class 2021-04-02 09:14:31 -07:00
JMC47 ce8e87c64b
Merge pull request #8747 from iwubcode/map-freelook
Support controlling Free Look via input bindings (motion controls, gamepad, etc!)
2021-04-01 01:05:00 -04:00
Silent d4b7ed4e38
GameList: Use titles from the Title Database for shortcut creation
Makes titles consistent with Dolphin's game list
2021-03-27 19:02:27 +01:00
Silent 0fb8f735e5
GameList: Remove invalid characters when creating a desktop shortcut
Fixes shortcut creation for games that have e.g. : in names.
2021-03-27 19:02:27 +01:00
JosJuice 27ddf6382b Set console's default language/country/region based on computer settings 2021-03-27 10:05:26 +01:00
Léo Lam da534c7d75
Merge pull request #9571 from JosJuice/netplay-sync-more-settings
NetPlay: Sync more settings
2021-03-27 01:38:33 +01:00
Léo Lam c915b780cf
Merge pull request #9596 from Minty-Meeo/apply-moar-RunAsCPUThread
Apply More Core::RunAsCPUThread
2021-03-27 01:11:34 +01:00
Pokechu22 e6bd7a8cd5 Open the properties window when alt+enter is used on the game list 2021-03-18 21:51:24 -07:00
Minty-Meeo db7f3f8f25 Apply More Core::RunAsCPUThread
In places where applicable, Core::RunAsCPUThread has replaced Core::SetState workarounds to pause and resume emulation for thread-sensitive operations.
 - void Core::SaveScreenShot()
 - void Core::SaveScreenShot(std::string_view name)
 - void JitInterface::GetProfileResults(Profiler::ProfileStats *prof_stats)
 - void MainWindow::OnExportRecording()
2021-03-18 22:31:28 -05:00
iwubcode 28e880efb6 DolphinQt: update hotkeyscheduler to run at 200hz, giving more precision for FreeLook motion devices 2021-03-18 17:54:12 -05:00
iwubcode f1ce921844 DolphinQt: update FreeLook to use relative input 2021-03-17 20:58:33 -05:00
iwubcode ddba5a3dfa DolphinQt: Add separate Free Look tab for rotation 2021-03-17 20:58:33 -05:00
iwubcode db4b4e40cb InputCommon / DolphinQt / Core: Add a "RelativeMouse" input which provides the raw delta mouse input
Co-authored-by: Jordan Woyak <jordan.woyak@gmail.com>
2021-03-17 20:58:33 -05:00
iwubcode 679d51c289 RenderWidget: Remove mouse based Free Look since it has moved to the HotkeyScheduler 2021-03-17 20:58:33 -05:00
Léo Lam c8d8f9ef85
Merge pull request #9577 from JosJuice/di-unknown-size-hack
DVDInterface: Make the WBFS/CISO hack only affect WBFS/CISO
2021-03-16 11:03:36 +01:00
Léo Lam f36b1cbb2a
Merge pull request #9541 from InusualZ/detecting-rso
Symbols: Fix RSO Modules detection algorithm
2021-03-16 10:33:58 +01:00
Léo Lam 5cea85f008
Merge pull request #9579 from Dentomologist/fix_open_containing_folder
Gamelist: Fix 'Open Containing Folder'
2021-03-16 09:52:46 +01:00
Dentomologist 48273b401e Gamelist: Fix 'Open Containing Folder'
Fix Gamelist context menu item 'Open Containing Folder' opening wrong
target on Windows when game parent folder is [foobar] and grandparent
folder contains file [foobar].bat or [foobar].exe

Add trailing directory separator to parent folder path to force Windows
to interpret path as directory.

Fixes https://bugs.dolphin-emu.org/issues/12411
2021-03-11 12:45:16 -08:00
JosJuice 49ccc77ebb DiscIO: Move some code from DiscExtractor to new file DiscUtils 2021-03-09 20:34:24 +01:00
InusualZ c37d826715 Display a progress bar to notify the user, about the work is being done 2021-03-08 16:22:26 +00:00
InusualZ 490db42e44 Fix detecting rso modules 2021-03-08 16:22:26 +00:00
Dentomologist 7ff8e3367f GraphicsWidget: Remove unused field
Fixes warning on freebsd-x64
2021-03-07 10:10:02 -08:00
JosJuice a9862b5395 NetPlay: Sync more settings 2021-03-07 14:22:53 +01:00
Léo Lam 61198541a0
Merge pull request #9562 from sepalani/dis-icons
Breakpoints: Change icon when disabled
2021-03-07 12:14:12 +01:00
Pokechu22 df81210e96 Use formatters in GetBPRegInfo; add missing commands
BPMEM_TEV_COLOR_ENV + 6 (0xC6) was missing due to a typo.  BPMEM_BP_MASK (0xFE) does not lend itself well to documentation with the current FIFO analyzer implementation (since it requires remembering the values in BP memory) but still shouldn't be treated as unknown.  BPMEM_TX_SETMODE0_4 and BPMEM_TX_SETMODE1_4 (0xA4-0xAB) were missing entirely.
2021-03-06 19:27:20 -08:00
Pokechu22 2d6ec7457d Add names and descriptions for XF registers to the FIFO analyzer 2021-03-06 19:27:14 -08:00
Pokechu22 953e09428f Add names and descriptions for CP registers to the FIFO analyzer 2021-03-06 19:27:14 -08:00
Sepalani 1e6dfc6b91 BreakpointWidget: Use QSignalBlocker 2021-03-05 13:35:33 +04:00
Sepalani fd7eeb7221 BreakpointWidget: Fix delete deleting both MBP and BP at address 2021-03-05 13:01:32 +04:00
Sepalani 359a539f25 Breakpoints: Change icon when disabled 2021-03-05 11:21:37 +04:00
Sepalani ef977123d5 BreakpointWidget: Emit BreakpointsChanged to update views 2021-03-04 21:10:37 +04:00
Léo Lam be500a98e2
Merge pull request #8779 from sepalani/open-dump
NetworkWidget: Reorganise SSL options group box
2021-03-04 13:37:10 +01:00
Léo Lam 511e9dcd2f
Merge pull request #9542 from InusualZ/toggle-bp
BreakpointWidget: Allow breakpoints to be toggled between enable/disable
2021-03-04 12:34:03 +01:00
Léo Lam 9c6c77351f
Merge pull request #9556 from JosJuice/cmake-msvc-latest
CMake: Build with -std:c++latest for MSVC
2021-03-04 12:12:06 +01:00
Léo Lam 00db622d50
Merge pull request #9560 from JosJuice/cmake-msvc-wil
CMake: Include WIL headers
2021-03-04 12:08:05 +01:00
JosJuice 2cb3f663bc CMake: Include WIL headers
MSBuild does this, so CMake should too. Fixes a Windows build error.
2021-03-04 10:26:31 +01:00
JosJuice 0cb71d3f47 CMake: Disable warning C5054 on DolphinQt
Same as 33c0abd.

Also removing -D_SILENCE_CXX17_RESULT_OF_DEPRECATION_WARNING
to match MSBuild. Qt is no longer triggering that warning.
2021-03-04 09:29:30 +01:00
Dentomologist 6e13d35026 DolphinQt: Removed unused this capture in lambda
The Host constructor sets a callback on a lambda that in turn calls
Host_UpdateDisasmDialog. Since that function is not a member function
capturing this is unnecessary.

Fixes -Wunused-lambda-capture warning on freebsd-x64.
2021-03-03 13:18:17 -08:00
JMC47 9843412440
Merge pull request #8996 from AdmiralCurtiss/memcard-save-import-export-refactor
Various improvements for the Memory Card Manager.
2021-03-03 14:51:31 -05:00
InusualZ 5e1b3514f6 Allow to disable/enable from the BreakpointWidget
Added a context menu, for when a breakpoint is right-clicked
Removed the `itemClicked` behavior, since it would clash with the context menu
2021-03-03 15:55:22 +00:00
Léo Lam 010279f4e6
Merge pull request #9513 from leoetlino/info-ios-version-qt
Qt: Re-add IOS version to the game info tab
2021-03-01 11:44:26 +01:00
Léo Lam 858f00b641
Merge pull request #9492 from nolange/fix_norandr_build
Cleanup X11 and XRANDR Macros
2021-03-01 11:36:39 +01:00
JosJuice c98144334f DolphinQt: Fix <game_id> tag in SoftwareRendererWidget.cpp
Same problem and same fix as in e55342a. Also changing <br />
to <br> for consistency with other strings while I'm at it.
2021-02-27 20:17:28 +01:00
Norbert Lange d4b293e969 Simplify macro guards for HAVE_XRANDR 2021-02-22 14:32:53 +01:00
Norbert Lange 29eaf09be4 Cleanup X11 and XRANDR Macros
This fixes build with X11 enabled and XRANDR disabled.
2021-02-22 14:30:43 +01:00
Sepalani a8dc1e3f1c NetworkWidget: Reorganise SSL options group box
Create "Dump options" and "Security options" group boxes.
Add "Network dump format" combo box.
Add "Open dump folder" button.
2021-02-20 18:19:37 +04:00
Sepalani 07f68560e6 WatchWidget: Add new/delete/clear toolbar items 2021-02-20 18:08:46 +04:00
Sepalani e3d85ffe35 MemoryWidget: Add "Add to watch" action 2021-02-17 21:32:36 +04:00
Sepalani bbcaede389 RegisterWidget: Fix add to watch action 2021-02-17 21:25:29 +04:00
Léo Lam 7097a7b3af
Qt: Re-add IOS version to the game info tab
This was accidentally removed during the Qt migration:
https://github.com/dolphin-emu/dolphin/pull/4734
2021-02-15 18:34:09 +01:00
Léo Lam 6944eaa003
Merge pull request #9512 from sepalani/func-update
CodeViewWidget: Add WithDetailedUpdate to update CodeWidget
2021-02-14 16:30:05 +01:00
Sepalani 5f629abd8b CodeViewWidget: Add WithDetailedUpdate to update CodeWidget
This used to also update the function calls and callers.
2021-02-14 16:01:32 +04:00
Sepalani aab78b88ab NetworkWidget: Add hostname to SSL table 2021-02-13 23:45:22 +04:00
Léo Lam 522cb6b137
IOS: Use less ambiguous names for classes
Some of the device names can be ambiguous and require fully or partly
qualifying the name (e.g. IOS::HLE::FS::) in a somewhat verbose way.

Additionally, insufficiently qualified names are prone to breaking.
Consider the example of IOS::HLE::FS:: (namespace) and
IOS::HLE::Device::FS (class). If we use FS::Foo in a file that doesn't
know about the class, everything will work fine. However, as soon as
Device::FS is declared via a header include or even just forward
declared, that code will cease to compile because FS:: now resolves
to Device::FS if FS::Foo was used in the Device namespace.

It also leads to having to write IOS::ES:: to access ES types and
utilities even for code that is already under the IOS namespace.

The fix for this is simple: rename the device classes and give them
a "device" suffix in their names if the existing ones may be ambiguous.
This makes it clear whether we're referring to the device class or to
something else.

This is not any longer to type, considering it lets us get rid of the
Device namespace, which is now wholly unnecessary.

There are no functional changes in this commit.

A future commit will fix unnecessarily qualified names.
2021-02-12 21:40:31 +01:00
Léo Lam bf758fbe7c
Merge pull request #9490 from Dentomologist/fix_expression_scroll_wheel_spam
Config: Fix expression window scroll wheel spam
2021-02-11 21:42:00 +01:00
Sepalani 2a15bc6ab2 SSL: Workaround to remove SNI from ClientHello 2021-02-11 23:13:59 +04:00
Léo Lam 1fc6fbc2c0
Merge pull request #6075 from sepalani/pcap-log
PCAP logging with fake TCP/UDP packet
2021-02-11 00:15:37 +01:00
Léo Lam ddacbf83f6
Merge pull request #9461 from cbartondock/master
Working Game IDs for Elf/Dol files
2021-02-10 22:50:40 +01:00
Dentomologist 43b389410a Config: Fix expression window scroll wheel spam
Fixes the expression window being spammed with the first entry in the
Operators or Functions select menus when scrolling the mouse wheel while
hovering over them.

Fixes https://bugs.dolphin-emu.org/issues/12405
2021-02-09 08:55:01 -08:00
Léo Lam 7ef8e53c4a
Qt: Fix "open wiki" option not using the wiki redirect script
The dolphin-redirect.php script seems to have been present since 2012
at least, but we accidentally stopped using it when the "open wiki"
feature was reimplemented in DolphinQt2 in 2016.

    <@delroth> dolphin-redirect.php is slightly smarter and tries to find gameid aliases for e.g. same region
    <@delroth> uh, I mean different region
2021-02-08 02:52:29 +01:00
Errorcodebin 8a3fe6e24a Fix mapping window title bar becoming unresponsive 2021-02-04 14:32:03 +01:00
iwubcode 77c68a3142 DolphinQt: Fix regression that caused the regex expression to be evaluated incorrectly. If an input expression has a non-alpha character in it, we want to quote it with backticks 2021-02-02 20:36:54 -06:00
Sepalani 82bb5d9915 NetworkCaptureLogger: PCAP support added
Log TCP/UDP read/write with fake packet.
2021-01-30 19:35:09 +04:00
cbartondock 83c127784b Working Game IDs for Elf/Dol files 2021-01-30 09:51:37 -05:00
Admiral H. Curtiss e47eb16641 GCMemcardManager: Detect attempt to import multiple save files with the same internal name. 2021-01-28 22:01:33 +01:00
Admiral H. Curtiss 74b56a8c7f GCMemcardManager: Add filename column. 2021-01-28 22:01:33 +01:00
Admiral H. Curtiss 9acbe1aced GCMemcardManager: Make columns sortable. 2021-01-28 22:01:33 +01:00
Admiral H. Curtiss 42f4ee629b GCMemcardManager: Make columns resizable by the user. 2021-01-28 22:01:33 +01:00
Admiral H. Curtiss 7cf991bd8a GCMemcardManager: Small cleanups. 2021-01-28 22:01:33 +01:00
Admiral H. Curtiss e00e6e1a8c GCMemcardManager: Replace remaining panic alert with ModalMessageBox. 2021-01-28 22:01:33 +01:00
Admiral H. Curtiss daa76183ed GCMemcard: Let ImportFile() take a Savefile instead of a direntry and a vector of blocks. 2021-01-28 22:01:33 +01:00
Admiral H. Curtiss e8b99d3afd GCMemcardManager: Rewrite file deleting logic to provide a better user experience. 2021-01-28 22:01:33 +01:00
Admiral H. Curtiss 6e96f95432 GCMemcardManager: Rewrite file copying logic to provide a better user experience. 2021-01-28 22:01:33 +01:00
Admiral H. Curtiss 08dccb8727 GCMemcardManager: Rewrite file importing logic to provide a better user experience. 2021-01-28 22:01:33 +01:00
Admiral H. Curtiss 87ae7ccd75 GCMemcardManager: Rewrite file exporting logic to provide a better user experience. 2021-01-28 22:01:32 +01:00
Admiral H. Curtiss 7bb7aa16c2 GCMemcardManager: Relayout file table for a more compact design. 2021-01-28 22:01:32 +01:00
Sepalani b363962757 BreakpointWidget: Remove unnecessary code
PPCDebugInterface.Clear() is called by Core on shutdown instead
2021-01-28 21:23:18 +04:00
Léo Lam 9ca24ae8e0
Merge pull request #9092 from shuffle2/vshack
msbuild: Merge "Core" libs into single DolphinLib
2021-01-28 01:33:46 +01:00
SirMangler 9f6d88880e
MemoryWidget: Add 'Offset' and General Improvements 2021-01-28 01:04:09 +01:00
Shawn Hoffman 500a694ca8 msbuild: bundle all dolphin "core" code into single library 2021-01-27 14:29:49 -08:00
Shawn Hoffman 7e1df34735 rename InputCommon/ControllerInterface/Device to CoreDevice 2021-01-27 14:29:48 -08:00
Shawn Hoffman 84128d9532 rename Common/File to Common/IOFile 2021-01-27 14:29:48 -08:00
Shawn Hoffman 07fd02f207 rename Core/Analytics to Core/DolphinAnalytics 2021-01-27 14:29:47 -08:00
Léo Lam 6dc0f0dfe6
Merge pull request #9438 from shuffle2/add-shortcut-to-desktop
DolphinQT: Gives option to add desktop shortcut
2021-01-27 19:41:09 +01:00
Léo Lam 28cd6f6520
Merge pull request #9440 from lioncash/qt6
DolphinQt: Qt 6.0 forward-compatibility changes
2021-01-27 19:28:43 +01:00
Léo Lam 6086111566
Merge pull request #9467 from iwubcode/gamecube_controllers_widget
DolphinQt: Move gamecube controller ui logic to its own widget
2021-01-27 19:24:06 +01:00
Léo Lam 84ad550c19
Merge pull request #9449 from Filoppi/patch-11
Qt: Fix Shake Mapping Indicator not showing deadzone
2021-01-27 19:19:58 +01:00
Léo Lam 42b55e8fa3
Merge pull request #9450 from Filoppi/patch-12
Qt: Fix stock input profiles being deletable
2021-01-27 19:18:51 +01:00
iwubcode 780360b921 DolphinQt: Move gamecube controller ui logic to its own widget 2021-01-27 12:02:39 -06:00
iwubcode f3b6c9723c DolphinQt: Move wiimote controller ui logic to its own widget 2021-01-27 11:27:05 -06:00
Léo Lam 4ba9bb26e9
Merge pull request #9455 from lioncash/traversal
TraversalProto: Minor cleanup
2021-01-27 15:51:29 +01:00
iwubcode 67b9e94e4d DolphinQt: Move common controller interface logic to its own widget 2021-01-23 15:17:38 -06:00
Lioncash 2021175809 TraversalClient: Convert state enum into an enum class
Prevents implicit conversions and prevents identifiers from polluting
the class scope.
2021-01-20 12:24:03 -05:00
Filippo Tarpini c1ab89cf2c Qt: Fix stock input profiles being deletable
Also avoid files without a name before the extension (name: ".ini")
from being added to the list because then they wouldn't be saveable
and it would appear with an empty name anyway.
2021-01-17 20:51:01 +02:00
Filippo Tarpini 43223aadc8
Qt: Fix Shake Mapping Indicator not showing deadzone
QRectF was missing from drawRect which meant the deazone was casted to an int, flooring its value (it goes from 0 to 1).
2021-01-16 23:10:35 +02:00
Lioncash 5b4fced2ba DolphinQt: Resolve deprecated usages of setTime_t and toTime_t
These have been replaced with setSecsSinceEpoch() and
toSecsSinceEpoch(), respectively within Qt 5.8, so we can migrate over
to them.
2021-01-13 05:07:32 -05:00
Lioncash 892154f7ea DolphinQt: Resolve deprecated usage of margin()
This function has been marked as obsolete. In Qt 6.0 it's removed
entirely, so we must use getContentsMargin() explicitly instead
(margin() would do this for us).

Ditto for setMargin(), in which case we use setContentsMargin instead.
setMargin() would just pass its argument to all four parameters of
setContentsMargin(), so we can do the same.
2021-01-13 05:07:32 -05:00
Lioncash 46ca371ef3 DolphinQt: Migrate QRegExp over to QRegularExpression
Qt 5.0 introduced QRegularExpression to replace QRegExp. In Qt 6.0,
QRegExp is removed entirely in favor of it.
2021-01-13 05:07:29 -05:00
Lioncash 765a1b3c09 DolphinQt: Explicitly include <QActionGroup> where applicable
An indirect inclusion scenario that breaks on Qt 6.0
2021-01-13 04:46:11 -05:00
Lioncash f647ca4620 DolphinQt: Replace usages of QLatin1Literal with QStringLiteral
This literal was deprecated in 5.14.0. Not to mention it wasn't
documented as part of the API either: see the 5.14.0 changelog here:

https://code.qt.io/cgit/qt/qtbase.git/tree/dist/changes-5.14.0?h=v5.14.0

On Qt 6.0 this define is removed entirely. To stay forward compatible,
we can make use of QStringLiteral instead.
2021-01-13 03:50:42 -05:00
Aminoa 23e565d94c DolphinQT: Gives option to add desktop shortcut
When a game is selected, the option to add a shortcut of the game to the desktop is given. Uses native Windows API since Qt lacks support for adding shortcuts.
2021-01-11 20:41:13 -08:00
Pokechu22 d55f9369c7 Use GX_CMD_UNKNOWN_METRICS instead of magic number 0x44 2021-01-11 12:41:04 -08:00
Léo Lam 4cdcbb6ab2
Merge pull request #9308 from smurf3tte/re23_patch
Patches for Resident Evil 2/3 audio issues
2021-01-06 01:52:15 +01:00
Léo Lam 0b1db65aa1
Merge pull request #9405 from Filoppi/patch-7
Rename "Use Fullscreen" setting to "Start in Fullscreen"
2021-01-06 01:44:46 +01:00
Léo Lam eafb9de047
Merge pull request #9323 from waddlesplash/haiku
Rehabilitate Haiku support.
2021-01-05 16:09:43 +01:00
Léo Lam 840ecfb32f
Merge pull request #9409 from AdmiralCurtiss/wii-save-import-tmd
Make WiiSave::Import() behave closer to the Wii System Menu's SD Card save copying.
2021-01-05 15:36:36 +01:00
Filippo Tarpini 0805b58302
DolphinQt: Remove some useless includes
[committer note: fixed commit message style]
2021-01-05 15:24:13 +01:00
waddlesplash 2df11d3911 Rehabilitate Haiku support. 2021-01-02 16:54:24 -05:00
Admiral H. Curtiss 2932b5f8cd Qt: Give better error messages when Wii save importing fails. 2021-01-02 17:46:12 +01:00
Filippo Tarpini 57c59c18d4
Rename "Use Fullscreen" setting to "Start in Fullscreen"
The name was confusing as changing it at runtime would not change the window to fullscreen, as it effectively only affects the start of the emulation.
Also blocked the ability to change it when the emulation is running, to be more inline with other similar settings, like "Render to main Window".
2020-12-31 13:39:45 +02:00
smurf3tte f4c579e720 Fix bad memory references in NewPatchDialog
This code was storing references to patch entries which could move around in memory if a patch was erased from the middle of a vector or if the vector itself was reallocated. Instead, NewPatchDialog maintains a separate copy of the patch entries which are committed back to the patch if the user accepts the changes.
2020-12-29 14:31:05 -08:00
smurf3tte f3b8a985e7 Patches for Resident Evil 2/3 audio issues
These games are erroneously zeroing buffers before they can be fully copied to ARAM by DMA. The responsible memset() calls are followed by a call to DVDRead() which issues dcbi instructions that effectively cancel the memset() on real hardware. Because Dolphin lacks dcache emulation, the effects of the memset() calls are observed, which causes missing audio.

In a comment on the original bug, phire noted that the issue can be corrected by simply nop'ing out the offending memset() calls. Because the games dynamically load different .rel executables based on the character and/or language, the addresses of these calls can vary.

To deal generally with the problem of code being dynamically loaded to fixed, known addresses, the patch engine is extended to support conditional patches which require a match against a known value. This sort of thing is already achievable with Action Replay/Gecko codes, but their use depends on enabling cheats globally in Dolphin, which is not a prerequisite shared by patches.

Patches are included for every region, character, and language combination. They are enabled by default.

The end result is an approximation of the games' behavior on real hardware without the associated complexity of proper dcache emulation.

https://bugs.dolphin-emu.org/issues/9840
2020-12-29 14:24:46 -08:00
Pokechu22 147636986d Fix latency field being initially enabled on audio backends not supporting it 2020-12-28 17:06:02 -08:00
iwubcode b9d9b27a81 DolphinQt: Only trigger Free Look mouse movement when the Free Look camera is active 2020-12-24 13:49:25 -06:00
iwubcode 9bd4e0939e DolphinQt: Update mapping window device to use expanding size policy 2020-12-24 13:49:25 -06:00
iwubcode 9a744ab25b DolphinQt: Move Free Look out of Graphics/Hotkey and into its own configuration window. Launched from a new menu option - "Free Look Settings". The HotKeyScheduler still calls the Free Look functionality to reduce the total number of threads 2020-12-24 13:49:25 -06:00
iwubcode e55342ae88 DolphinQt: Fix all instances of <gameid> in AdvancedWidget to use the appropriate html code instead 2020-12-18 22:50:06 -06:00
Léo Lam 6018525992
Qt: Fix deprecated use of MidButton
MidButton has been deprecated since Qt 4.7. The replacement is
MiddleButton.
2020-12-16 14:45:11 +01:00
Léo Lam efdb620783
Qt/Config: Remove unused includes 2020-12-16 14:43:26 +01:00
Léo Lam 2615da820d
Merge pull request #9157 from jordan-woyak/wm-emu-tilt-wrap-around
WiimoteEmu: Allow tilt to wrap around and simulate full 360 degree rotations.
2020-12-15 03:14:14 +01:00
Jordan Woyak 4bb0a885d0 WiimoteEmu/DolphinQt: Fix tilt indicator for wrapped around angles. 2020-12-14 20:02:49 -06:00
Martin Michelsen a9486d087f
Add tap-like fake Ethernet network interface for macOS
TunTap has recently become unmaintained, and it seems Apple wants developers to move away from kexts in general. TunTap currently takes some finagling to work on Catalina, and it may not work at all on Big Sur, necessitating a non-kext-based solution. Fortunately, fake Ethernet devices were introduced in Sierra and can be used similarly to tap adapters. This commit adds a new type of BBA interface implementation which uses fake Ethernet devices via tapserver (https://github.com/fuzziqersoftware/tapserver) to communicate with the host. This implementation was tested with PSO Episodes I & II, which can successfully connect to a private server running locally.

This implementation is only available on macOS, since that's the only place it's needed - Windows/Linux/Unix are unaffected by TunTap being deprecated.
2020-12-15 03:01:04 +01:00
Léo Lam 2c2ec16b53
Merge pull request #9320 from JosJuice/remove-patch-crash
DolphinQt: Fix crash after removing extra patch line
2020-12-15 00:01:07 +01:00
JosJuice 3c6ad495b4 DolphinQt: Fix crash after removing extra patch line 2020-12-11 22:13:10 +01:00
JosJuice b285991b88 Turn Config::Info into a class with getters 2020-12-11 19:54:16 +01:00
JosJuice 11e8783893 Core: Don't copy default _Enabled sections to user INIs 2020-12-11 15:38:11 +01:00
JosJuice d77a9ad1b6 Core: Save the disabling of default enabled codes
The previous commit adjusted the code for loading
and this commit adjusts the code for saving.
2020-12-11 10:08:20 +01:00
JosJuice 366cfd0f8c Core: Allow overriding the enabling of a code
If we want to enable codes in the default game INIs,
we should have some way for users to disable them.
This commit accomplishes that by adding a *_Disabled
section corresponding to each *_Enabled section.
2020-12-11 10:02:14 +01:00
Léo Lam a5880fa402
Qt: Add missing tr calls for tooltip descriptions 2020-11-30 14:04:08 +01:00
Léo Lam d043c5f81d
Merge pull request #9153 from iwubcode/qt_custom_tooltip
Remove description box in graphics tabs and use custom tooltips instead
2020-11-29 12:37:31 +01:00
Vincent Cunningham db5aec019c
Add Fallback Region to configuration menu
Fallback Region
A user-selected fallback to use instead of the default PAL

This is used for unknown region or region free titles to give them
the ability to force region to use. This replaces the current fallback region
of PAL. This can be useful if a user is trying to play a region free
tilte that is originally NTSC and expects to be run at NTSC speeds. This
may be done when a user attempts to dump a WAD of their own without
understanding the settings they have chosen, or could be an intentional
decision by a developer of a ROM hack that can be injected into a
Virtual Console WAD.

Remove using System Menu region being checked in GetFallbackRegion

Use DiscIO::Region instead of std::String for fallback

Add explanation text for Fallback Region
2020-11-28 15:40:21 -05:00
iwubcode cc837a59d6 Core / DolphinQt: Add ini only option to force low-contrast tooltips 2020-11-28 11:49:14 -06:00
iwubcode 9c204428fe DolphinQt: Add tooltip support to Software Renderer Graphics tab 2020-11-28 11:49:14 -06:00
iwubcode 2bfb8ebf96 DolphinQt: Add tooltip support to Hacks Graphics tab 2020-11-28 11:49:14 -06:00
iwubcode 1673442794 DolphinQt: Add tooltip support to Advanced Graphics tab 2020-11-28 11:49:14 -06:00
iwubcode d083dae7fd DolphinQt: Add tooltip support to Enhancements Graphics tab 2020-11-28 11:49:14 -06:00
iwubcode b9eae86704 DolphinQt: Add tooltip support to General Graphics tab 2020-11-28 11:49:14 -06:00
iwubcode a9271aa167 DolphinQt: Add the ability to show a tooltip for custom graphics controls 2020-11-28 11:49:14 -06:00
iwubcode af0161cafd DolphinQt: Add generic tooltip controls 2020-11-28 11:49:14 -06:00
iwubcode 613d8b1cba DolphinQt: Remove description box handling from graphics widget and window 2020-11-28 11:49:14 -06:00
iwubcode c754b02aae DolphinQt: Add BalloonTip which is built off of an internal Qt class. It gives the ability to show a tooltip with an arrow! 2020-11-28 11:49:14 -06:00
Lioncash ffbf3d71f0 Frontends: Migrate logs over to fmt 2020-11-25 21:19:08 -05:00
Léo Lam 3891ac2682
Merge pull request #9232 from AdmiralCurtiss/show-result-value-in-expression-editor
Qt/IOWindow: Show result value in expression editor.
2020-11-26 01:30:12 +01:00
Admiral H. Curtiss 11e226a91a Qt/IOWindow: Remove Apply button. 2020-11-26 00:47:37 +01:00
Admiral H. Curtiss 334100509b Qt/IOWindow: Show the current value of the expression. 2020-11-26 00:46:51 +01:00
Admiral H. Curtiss ddfb8fa404 Qt/IOWindow: Apply expressions immediately so we can query the current value of the expression. 2020-11-26 00:45:31 +01:00
Léo Lam 9efc81ae98
Fix variable shadowing warnings 2020-11-21 02:08:09 +01:00
Léo Lam 82f1e6204d
Fix -Wsign-compare warnings 2020-11-21 02:08:09 +01:00
Léo Lam c580a70a12
Merge pull request #9210 from Dentomologist/regions-show-hide-all
DolphinQt: Add Show/Hide All options to gamelist region menu
2020-11-20 11:35:22 +01:00
Dentomologist 7ded075561 DolphinQt: Add Show/Hide All options to gamelist region menu 2020-11-19 20:39:49 -08:00
Léo Lam e3247b567d
Merge pull request #9185 from Losuc/skipEFBaccessHotkey
Add a Skip EFB Access Hotkey
2020-11-19 17:28:45 +01:00
Léo Lam eb1581bbcc
Merge pull request #9246 from JosJuice/translation-eot
DolphinQt: Don't return 0x04 bytes from tr
2020-11-18 02:31:13 +01:00
Léo Lam 31d7be521c
Merge pull request #7714 from cristian64/avoid_leaking_gamelistmodel
DolphinQt: Avoid leaking the GameListModel instance to gracefully shutdown the GameTracker and prevent a crash on exit
2020-11-18 02:14:51 +01:00
JosJuice 53da97208a DolphinQt: Don't return 0x04 bytes from tr
tr calls with more than one argument would have a 0x04 byte
in the returned string when no translation was found
(which always is the case when using Dolphin in English).
2020-11-12 19:44:44 +01:00
JosJuice a348efe947 Fix dereferencing nullptr BootParameters 2020-11-06 09:34:53 +01:00
Jordan Woyak 3cd4c56645
Merge pull request #9203 from nick-michael/virtual-notches
Logic & UI for "Virtual Notches"
2020-11-03 17:10:54 -06:00
Nick Michael 55dd3d7337 Virtual Notch settings and UI for octagonal stick 2020-11-03 22:06:27 +00:00
Losucaru 407ef8b596 Add a Skip EFB Access from CPU Hotkey 2020-10-29 21:03:06 -03:00
LC 752b1048df
Merge pull request #9196 from Dentomologist/update-register-view-debug-font
DolphinQt: Update register view font when Debug Font changes
2020-10-29 12:52:02 -04:00
Dentomologist 5fe7528855 DolphinQt: Update register view font when Debug Font changes
Resolves https://bugs.dolphin-emu.org/issues/12261

Co-authored-by: Léo Lam <leo@leolam.fr>
2020-10-29 09:31:14 -07:00
Shawn Hoffman 2ebe02fd1b dolphinqt msbuild: do not moc TASSlider.h 2020-10-26 18:37:46 -07:00
Jordan Woyak 15914b749c DolphinQt: Add a warning to the MEM1/MEM2 override setting description. 2020-10-25 12:54:42 -05:00
JosJuice 908d6f8fa0
Merge pull request #9179 from leoetlino/available-video-backends
VideoCommon: Get rid of the global g_available_video_backends
2020-10-23 20:02:21 +02:00
LC c42b80a156
Merge pull request #9186 from JosJuice/rtl-pot
DolphinQt: Move QT_LAYOUT_DIRECTION string to qt-strings.pot
2020-10-23 13:37:10 -04:00
JosJuice 7841fb7337 DolphinQt: Move QT_LAYOUT_DIRECTION string to qt-strings.pot
Now that we have a .pot file specifically for strings from
Qt itself, it makes sense to move this into it.
2020-10-23 18:45:35 +02:00
Jordan Woyak e8bb88c2a1 DolphinQt: Don't call UICommon::InhibitScreenSaver if already in desired state. 2020-10-22 13:19:01 -05:00
LC de96fe0860
Merge pull request #9162 from jordan-woyak/quaternion
Replace stateful rotational matrices with quaternions.
2020-10-21 17:34:11 -04:00
Léo Lam aaaa3896c0
VideoCommon: Get rid of the global g_available_video_backends
Replace it with a function-local static that is initialized on first
use. This gets rid of a global variable and removes the need for
manual initialization in UICommon.

This commit also replaces the weird find_if that looks for a non-null
unique_ptr with a simple "is vector empty" check considering that
none of the pointers can be null by construction.
2020-10-21 22:00:10 +02:00
Léo Lam 299adf537d
Merge pull request #9021 from AdmiralCurtiss/gui-memcard-format-sram
Qt/GCMemcardCreateNewDialog: Use zero values for formatting instead of accessing g_SRAM.
2020-10-20 14:55:23 +02:00
Léo Lam fc3b474cce
Merge pull request #8318 from iwubcode/dynamic_input_textures
InputCommon: Dynamic Input Textures
2020-10-20 02:10:29 +02:00
Léo Lam 911704611e
Merge pull request #9096 from jordan-woyak/calibration-cleanup
ControllerEmu: Improve and simplify UpdateCalibrationData.
2020-10-20 02:01:16 +02:00
Léo Lam 98875346bd
Merge pull request #9104 from JosJuice/cmd-unicode
DolphinQt: Handle non-ASCII characters in Windows cmd arguments
2020-10-20 01:45:28 +02:00
Léo Lam 8a8dc3db83
Merge pull request #8613 from jordan-woyak/expose-disable-ss
Config: Expose "DisableScreenSaver" in the UI and default it to true.
2020-10-20 01:20:24 +02:00
Jordan Woyak 09431635f3 InputCommon/WiimoteEmu: Replace stateful rotational matrices with quaternions. 2020-10-19 16:33:55 -05:00
LC 49c7a5b289
Merge pull request #9121 from Sammi-Husky/bat-registers
DolphinQt/Debugger: Fix DBAT and IBAT registers in RegisterWidget
2020-10-19 07:56:42 -04:00
LC 5722c680a4
Merge pull request #8006 from JosJuice/qt-rtl
DolphinQt: Enable RTL layout
2020-10-19 07:46:40 -04:00
Léo Lam 0de6a32f4c
Qt/QtUtils: Fix accidental recursion in ParallelProgressDialog
Seems to be a typo.
2020-10-19 12:39:10 +02:00
Jordan Woyak 50ec747840 Clean up screen saver inhibition and apply setting change immediately. 2020-10-18 16:31:48 -05:00
Jordan Woyak fa83a3a114 DolphinQt: Expose "DisableScreenSaver" setting in the UI. 2020-10-18 16:31:46 -05:00
JosJuice 6670226a44 DolphinQt: Reset TAS input slider to default on right-click
This is a feature which existed in DolphinWX. Seems like it got
implemented in DolphinQt for IRWidget/StickWidget but not sliders.
2020-10-18 13:47:00 +02:00
JosJuice d64fc67b04 Show NKitness in file format string
To make people more aware that they're not using a normal disc image.
2020-10-06 19:35:00 +02:00
JosJuice 568f226937 Add Metal Gear Solid: The Twin Snakes to NKit warning message
Unlike Super Paper Mario, this game doesn't crash as soon as you
try to start it, but rather if you try to skip a certain cutscene.
Thanks to JMC for letting me know about this.
2020-10-04 12:22:27 +02:00
iwubcode fd3af4c5d3 InputCommon: Introducing the "Dynamic Input Texture". Configuration links an emulated input action to an image based on what host key is defined for that emulated input. Specific regions are called out in configuration that mark where to replace an input button with a host key image. 2020-10-03 17:10:35 -05:00
Christian Aguilera ee13e6ec80 Improved responsiveness when refreshing game list. 2020-10-01 22:10:16 +02:00
Christian Aguilera 4ca92464c0 **Refresh** and **Purge Game List Cache** now correctly enabled/disabled as notified by GameListRefreshRequested and GameListRefreshCompleted. 2020-10-01 22:09:45 +02:00
Christian Aguilera bada677c5a Avoid using unnecessary RunOnObject() calls in GameTracker's worker thread to prevent deadlocks on shutdown. 2020-10-01 22:09:45 +02:00
Christian Aguilera dc7b92651f Ensured that GameTracker's internal worker thread is flushed on exit to avoid crashes when accessing stale, already-destroyed data, and to favor responsiveness. 2020-10-01 22:09:45 +02:00
Christian Aguilera 5b757024c4 GameListModel instance ownership transferred back to the GameList instance. The GameListModel instance will be passed as a constructor parameter where needed. 2020-10-01 22:09:45 +02:00
Christian Aguilera 0d02e70d4a Removed all references to GameListModel from the Settings component. 2020-10-01 22:09:45 +02:00
Sammi Husky fa866062ca DolphinQt/Debugger: Fix DBAT and IBAT registers in RegisterWidget 2020-09-29 22:11:21 -07:00
Jordan Woyak 48b76ff90f InputCommon: Improve input detection to produce buton combinations. 2020-09-25 22:51:32 -05:00
Jordan Woyak d8ad8c3861 InputCommon: Make hotkeys and input detection aware of Ctrl -> L_Ctrl / R_Ctrl hierarchy. 2020-09-25 20:29:18 -05:00
Jordan Woyak b3acc7403f InputCommon: Support detecting combinations of inputs. (Hotkeys) 2020-09-25 20:29:18 -05:00
LC a9b15dfe3c
Merge pull request #9107 from JosJuice/qt-disc-0
DolphinQt: Use 1-based disc numbering in InfoWidget
2020-09-23 12:29:15 -04:00
JMC47 54e570a95f
Merge pull request #8902 from JosJuice/android-convert
Android: Add disc image conversion
2020-09-23 12:27:43 -04:00
JosJuice 0ddd296cd9 DolphinQt: Use 1-based disc numbering in InfoWidget 2020-09-23 11:42:22 +02:00
JosJuice 17e02838b0 DolphinQt: Stop using qtmain 2020-09-21 17:27:10 +02:00
JosJuice 16d2ef1ea9 DolphinQt: Handle non-ASCII characters in Windows cmd arguments
CommandLineParse expects UTF-8 strings. (QApplication, on the
other hand, seems to be designed so that you can pass in the
char** argv untouched on Windows and get proper Unicode handling.)
2020-09-21 17:26:29 +02:00
Jordan Woyak 0ca73355a8 ControllerEmu: Improve and simplify UpdateCalibrationData. 2020-09-19 08:40:55 -05:00
Techjar 29460b946e Qt/MappingWindow: Add support for built-in profiles 2020-09-18 06:32:42 -04:00
JosJuice f01ccfdb82 Android: Only allow conversion when appropriate 2020-09-16 18:48:25 +02:00
JosJuice ca46028cde DiscIO: Use std::function for compression callback 2020-09-16 18:36:50 +02:00
JMC47 e0117a86ad
Merge pull request #8819 from JosJuice/panic-alert-deadlock-pause-on-focus-loss
DolphinQt: Fix the panic alert deadlock, Pause on Focus Loss edition
2020-09-15 11:46:46 -04:00
LC 9e3c08394a
Merge pull request #9085 from Techjar/better-monospace
Qt: Use better method of getting default monospace font
2020-09-15 05:01:15 -04:00
LC 601ff182db
Merge pull request #9084 from Techjar/custom-rtc-tz-fix
Qt/AdvancedPane: Force UTC time for custom RTC entry
2020-09-15 04:58:26 -04:00
Techjar 0759ead9b6 Qt: Use better method of getting default monospace font
This should give us a nicer font on Windows, while also not severely
impacting the existing behavior on Linux.
2020-09-15 04:48:44 -04:00
Techjar 4d15fb62d9 Qt/AdvancedPane: Force UTC time for custom RTC entry 2020-09-14 22:09:14 -04:00
JMC47 4f1f849c9d
Merge pull request #8985 from jordan-woyak/btemu-cleanup
BTEmu/Wiimote: Fixes and Cleanups.
2020-09-14 02:09:27 -04:00
iwubcode 2bb7d207b7 DolphinQt: fix other widgets that use lambdas (capturing this) without setting the receiver 2020-09-12 17:53:17 -05:00
iwubcode a83bf8bc59 DolphinQt: properly remove slot connection for ConfigChange when object is destructed 2020-09-12 17:35:58 -05:00
Admiral H. Curtiss c74ea6696e Settings: Fix incorrect config key for enabled analytics. 2020-09-09 20:19:30 +02:00
LC b350cf043b
Merge pull request #8976 from JosJuice/port-some-settings
Port some settings to the new config system
2020-09-07 22:37:46 -04:00
JMC47 e7e5175606
Merge pull request #8861 from JosJuice/netplay-hash
Make netplay's "same game" check more robust
2020-09-06 17:14:08 -04:00
JMC47 c8c4ec28ce
Merge pull request #8644 from JosJuice/rework-tgc
DiscIO: Rework the implementation of TGC reading
2020-09-06 07:06:26 -04:00
Shawn Hoffman d35514399e msbuild: fix a typo 2020-08-27 15:15:52 -07:00
Admiral H. Curtiss 4b91c071c1 Qt/GCMemcardCreateNewDialog: Use zero values for formatting instead of accessing g_SRAM. 2020-08-24 19:33:28 +02:00
Shawn Hoffman 89b6a4cbee DolphinQt: resolve Qt5.15 deprecations 2020-08-23 13:57:05 -07:00
Shawn Hoffman 6ef9d70701 name some threads 2020-08-22 17:22:07 -07:00
LC 4a34b74e68
Merge pull request #9035 from shuffle2/vs-pretty
misc vcxproj cleanup
2020-08-22 20:13:25 -04:00
Shawn Hoffman cff4806d8d windows: fix build if pch were to be disabled 2020-08-22 16:18:24 -07:00
Shawn Hoffman af55938538 msbuild: use the moc dispatcher from Qt's vstools
The new method supports build parallelism and cleaner
integration into msbuild dependency flows.
2020-08-22 16:17:51 -07:00
Shawn Hoffman 03a263db20 msbuild: fixup linking of discord-rpc 2020-08-22 16:17:50 -07:00
Shawn Hoffman 2f47f486af msbuild: re-enable standalone vcxproj processing 2020-08-22 16:17:50 -07:00
Shawn Hoffman 1f8cda6281 DolphinQt: sort the files in vcxproj 2020-08-22 16:17:50 -07:00
Shawn Hoffman 94bf48b67c msbuild: refactor stuff out of project files (for dolphin) 2020-08-22 16:17:50 -07:00
Shawn Hoffman 36ace8eb52 prettify some constructs in vcxproj files 2020-08-22 16:17:50 -07:00
Admiral H. Curtiss f859da112e Update Windows build to use Qt 5.15.0. 2020-08-22 20:08:38 +02:00
Léo Lam 55c931d624
Merge pull request #8995 from Tilka/warnings
Fix some more GCC warnings
2020-08-17 14:49:28 +02:00
Jordan Woyak 13ee6bd7bb BTEmu/Wiimote: Cleanups/Fixes. 2020-08-16 11:38:13 -05:00
Christian Aguilera ddeb2236ae Removed RunOnObject() usage to prevent deadlock on exiting the NetPlay Session Browser dialog. 2020-08-16 12:32:50 +01:00
Christian Aguilera eee1589aa3 Restoring NetPlay Session Browser dialog's settings before connecting widgets, to prevent multiple refresh requests on change. 2020-08-15 22:29:23 +01:00
Tillmann Karras d2b06f4786 Fix various -Wshadow warnings 2020-08-08 21:45:03 +01:00
Tilka f17b5dd41b
Merge pull request #8804 from iwubcode/dsu-improvements
DolphinQt / InputCommon - Support multiple DSU servers
2020-08-08 20:45:57 +01:00
Tilka 76b955e090
Merge pull request #8940 from RenaKunisaki/master
add Break On Hit and Log On Hit for instruction breakpoints
2020-08-08 19:46:10 +01:00
Tilka d7a96f927c
Merge pull request #9002 from OatmealDome/renderwidget-sheet
MainWindow: Attach quit emulation sheet to RenderWidget if shown on macOS
2020-08-08 19:18:32 +01:00
Tilka 4c64446afe
Merge pull request #9005 from OatmealDome/macos-psn-arg
DolphinQt: Ignore "-psn" command line option on macOS
2020-08-08 19:11:39 +01:00
OatmealDome 5c1693587f DolphinQt: Ignore "-psn" command line option on macOS 2020-08-04 15:55:51 -04:00
JosJuice b0f9bb9f13 Port some settings to the new config system
Other than the controller settings and JIT debug settings,
these are the only settings which were defined in Java code
but not defined in the new config system in C++. (There are
still a lot of settings that are defined in the new config
system but not yet saveable in the new config system, though.)
2020-08-03 15:07:53 +02:00
OatmealDome fae8f8d68b MainWindow: Attach quit emulation sheet to RenderWidget on macOS 2020-08-03 05:48:57 -04:00
JosJuice 5cad82137d Allow translations and custom names in GameFile::GetNetPlayName
There is no longer any major reason for why this function would
need to return the same result for all players.
2020-08-02 22:46:53 +02:00
JosJuice a41166bb37 Make netplay's "same game" check more robust
Instead of comparing the game ID, revision, disc number and name,
we can compare a hash of important parts of the disc including
all the aforementioned data but also additional data such as the
FST. The primary reason why I'm making this change is to let us
catch more desyncs before they happen, but this should also fix
https://bugs.dolphin-emu.org/issues/12115. As a bonus, the UI can
now distinguish the case where a client doesn't have the game at
all from the case where a client has the wrong version of the game.
2020-08-02 22:46:53 +02:00
Admiral H. Curtiss cdf2a29b5e Qt/IOWindow: Add a handful of math functions to the function dropdown. 2020-08-02 22:09:09 +02:00
JosJuice 13f20ecd34 DolphinQt: Don't capture local pointer by reference
This may be the cause of a crash that has been reported on the
forums, but I'm not sure since I can't reproduce it myself.
2020-07-31 11:33:48 +02:00
JosJuice 2e8c5b4521 DolphinQt: Show a warning when launching an NKit disc image
It is my opinion that nobody should use NKit disc images without
being aware of the drawbacks of them. Since it seems like almost
nobody who is using NKit disc images knows what NKit is (hmm, now
how could that have happened...?), I am adding a warning to Dolphin
so that you can't run NKit disc images without finding out about the
drawbacks. In case someone really does want to use NKit disc images,
the warning has a "Don't show this again" option. Unfortunately, I
can't retroactively add the warning where it's most needed:
in Dolphin 5.0, which does not support Wii NKit disc images.
2020-07-29 21:05:57 +02:00
Tillmann Karras 062dd5ab0a DolphinQt: fix -Wunused-variable warning 2020-07-24 17:44:32 +01:00
Tillmann Karras 5bd2b2699c DolphinQt: fix -Wsign-compare warning 2020-07-24 17:44:32 +01:00
Tillmann Karras 750cb1f830 DolphinQt: fix -Wunused-but-set-variable warning 2020-07-24 17:41:37 +01:00
iwubcode 9c8338ec4c DolphinQt / VideoCommon: Add additional texture dumping options. Specifically, this enables users to choose whether to dump mip maps, base level textures, or both. 2020-07-22 19:30:27 -05:00
Filippo Tarpini f6ba54b74e
Fix disc image conversion button not being clear #3
It wasn't clear whether the conversion would create a new file or replace the old one

Recreated #8952 directly from github
2020-07-22 23:00:20 +03:00
JosJuice fe5e92f706 DolphinQt: Show WAD as "WAD" instead of "" in file format column
https://bugs.dolphin-emu.org/issues/12190
2020-07-19 21:30:48 +02:00
Filip Gawin 0ede5d1537 Use range loop (if possible) 2020-07-18 18:29:16 -05:00
iwubcode 97c9cf3e21 DolphinQt / InputCommon - add DSU string validator to avoid crashes, limited backwards compatibility support 2020-07-17 14:53:39 -05:00
iwubcode 58aa0150e1 DolphinQt / InputCommon: Support multiple DSU servers 2020-07-17 14:53:39 -05:00
JosJuice aa4896fb3f DolphinQt: Add i18n comment for "Surround" 2020-07-17 19:10:31 +02:00
Jordan Woyak 8b3e9e6a81 DolphinQt: Replace unusual Qt::InitialSortOrderRole usage with a custom role. 2020-07-16 20:27:07 -05:00
LC a7e475e57b
Merge pull request #8958 from jordan-woyak/sort-fix
DolphinQt: Fix default sort direction of game list.
2020-07-16 21:20:43 -04:00
Jordan Woyak ecf016e80a DolphinQt: Fix default sort direction of game list. 2020-07-16 19:21:14 -05:00
Techjar 037aa2192f NetPlay: Limit nickname length
Ridiculously long nicknames cause UI silliness, so 30 characters seems
like a reasonable limit, as it's the same as the forum.
2020-07-16 19:03:54 -04:00
Techjar 92812d0b0b QtUtils: Add UTF8CodePointCountValidator 2020-07-16 19:03:46 -04:00
Rena Kunisaki a553f22385 Add Break On Hit and Log On Hit for instruction breakpoints 2020-07-11 13:38:58 -04:00
JosJuice 9c7704c0ac DolphinQt: Attempt to fix ParallelProgressDialog constantly reopening
I believe the value returned by value() resets when we call
setValue() with the maximum (due to auto-reset). I have been
unable to test this because I can't reproduce the issue, which is
described at https://bugs.dolphin-emu.org/issues/12158#note-9.
2020-07-09 15:45:29 +02:00
JosJuice aeeb85aa3a DolphinQt: Replace QTBUG-10561 workaround with better workaround
This workaround is not timing sensitive, unlike the old one.

Hopefully fixes https://bugs.dolphin-emu.org/issues/12158
and https://bugs.dolphin-emu.org/issues/12180.
2020-07-08 20:29:26 +02:00
LC b9ae7c350e
Merge pull request #8926 from JosJuice/sysconf-sound
DolphinQt: Expose SYSCONF sound setting
2020-07-08 08:41:23 -04:00
LC 0bff77d9e4
Merge pull request #8925 from JosJuice/tas-turbo-interval
DolphinQt: Allow customizing TAS input turbo interval
2020-07-08 08:40:46 -04:00
JosJuice 7a45ca0334 DolphinQt: Mark Zstandard as recommended for RVZ 2020-07-05 12:52:59 +02:00
JosJuice 5360ec80c8 DolphinQt: Fix scrubbing not being disabled for Datel discs
The code for disabling scrubbing for RVZ was overriding the code
for disabling scrubbing for Datel discs.
2020-07-04 15:06:05 +02:00
JosJuice e1e57fc359 DolphinQt: Expose SYSCONF sound setting 2020-07-02 22:25:41 +02:00
JosJuice 1c4088e203 DolphinQt: Allow customizing TAS input turbo interval
As a side effect of 9c5c3c0, Dolphin's frame counter was changed
to run at 60/50 Hz even if the game is running at a lower framerate
such as 30 fps. Since the TAS input turbo button functionality
toggled the state of a button every other frame as reported by
the frame counter, this change made the turbo button functionality
not work with 30/25 fps games.

I believe it would be hard to change the frame counter back to
how it used to work without undermining the point of 9c5c3c0,
and I'm not sure if doing so would be desireable or not anyway,
so what I'm doing instead is letting the user determine how long
turbo button presses should last. This lets users avoid the 30/25
fps game problem while also granting additional flexibility.
Perhaps there is some game where it is useful to mash at a speed
which is slower than frame perfect.
2020-07-02 16:58:29 +02:00
JMC47 961f937010
Merge pull request #8853 from CrunchBite/feature-xlink-kai-bba
Feature XLink Kai BBA
2020-06-27 23:32:49 -04:00
Tilka b36ab8360e
Merge pull request #8820 from iwubcode/freelook_field_of_view
Core / VideoCommon / DolphinQt - allow tweaking freelook camera's field of view
2020-06-27 18:00:48 +01:00
CrunchBite 067667fda5 Add XLink Kai UDP BBA 2020-06-26 14:52:30 -04:00
JMC47 1ab37990b1
Merge pull request #8808 from sepalani/net-widgets-block
NetworkWidget: Add Blocking column
2020-06-26 07:38:52 -04:00
iwubcode 69bd6bbdef DolphinQt: change freelook fov by the step size 2020-06-25 13:34:42 -05:00
iwubcode dc4b938526 DolphinQt: use hotkeys for field of view to modify freelook camera 2020-06-25 13:34:42 -05:00
JosJuice a2c51e027f DolphinQt: Fix a -Wshadow warning in ConvertDialog 2020-06-25 16:44:02 +02:00
JosJuice 94fd583147 DolphinQt: Fix a -Wswitch warning in ConvertDialog 2020-06-25 16:34:43 +02:00
Tilka 6468978dd0
Merge pull request #8897 from JosJuice/qt-file-format-columns
DolphinQt: Add columns with file format details
2020-06-25 15:21:44 +01:00
JosJuice c9edfa0eaa Replace Windows CMake lambda constexpr capture workaround
While manually capturing constexpr variables used in lambda
expressions does work, it's really easy to forget doing so since
we don't have a Windows CMake builder and the workaround isn't
necessary anywhere else. Fortunately, MSVC has a flag that fixes
the constexpr capture behavior, so let's use that instead.
2020-06-25 13:11:29 +02:00
JosJuice 265e0d00d6 DolphinQt: Add columns with file format details 2020-06-25 12:49:36 +02:00
Tilka 26ed3b318c
Merge pull request #8891 from JosJuice/file-details
Show file format details in game properties
2020-06-25 11:00:49 +01:00
Pierre Bourdon cf36877608
Merge pull request #8879 from AdmiralCurtiss/gci-folder-savestates
Keep memory card header and use it to reinitialize GCI folders on mismatch. (Fix savestate with GCI folders)
2020-06-24 08:36:58 +02:00
JosJuice 8c205ef8f3 DolphinQt: Show version number for WIA/RVZ introduction 2020-06-21 21:16:10 +02:00
JosJuice d494e0230c Show file format details in game properties 2020-06-21 20:47:23 +02:00