Commit Graph

23182 Commits

Author SHA1 Message Date
Jordan Woyak 48b69ca018 ControllerInterface: Input detection improvements. 2019-03-03 18:36:16 -06:00
spycrab 13b2b93d3d
Merge pull request #7846 from spycrab/qt_no_ticks
Qt/MappingButton: Don't show ticks
2019-03-04 01:29:48 +01:00
Mat M 66a8220011
Merge pull request #7845 from jordan-woyak/elided-button-fix
DolphinQt: Fix ElidedButton (MappingButton) from growing with long text.
2019-03-03 18:53:01 -05:00
Mat M 503b96c617
Merge pull request #7848 from jordan-woyak/config-change-callbacks
Common/Config: Add a utility class to defer config change callbacks.
2019-03-03 18:44:34 -05:00
Jordan Woyak 1cae9b9b39 DolphinQt: Fix ElidedButton (MappingButton) from growing with long text. 2019-03-03 17:41:48 -06:00
Jordan Woyak bbc6bf5294 Common/Config: Add a utility class to suppress config change callbacks. 2019-03-03 17:35:22 -06:00
Mat M 2eb9140e07
Merge pull request #7850 from jordan-woyak/device-and-profile-dropdown-fix
DolphinQt: Prevent contents of device and profile dropdowns from throwing off layout.
2019-03-03 18:33:16 -05:00
Jordan Woyak 031149cc1d DolphinQt: Prevent contents of device and profile dropdowns from throwing off layout. 2019-03-03 16:09:24 -06:00
spycrab 2dcb703a1e
Merge pull request #7842 from spycrab/win_updater_hidpi
Updater: Support HiDPI
2019-03-03 22:46:19 +01:00
Jordan Woyak 4db4840d7c WiimoteEmu: Reimplement tilt/swing/camera/orientation data using matrix math. 2019-03-03 12:43:25 -06:00
spycrab 0d203cf0bb Qt/GCMemcardManager: Make message boxes modal 2019-03-03 16:36:58 +01:00
spycrab 326e2fb300 Qt/FIFOPlayerWindow: Make message box modal 2019-03-03 16:26:23 +01:00
spycrab 1ba810901d Qt/MappingWindow: Make message boxes modal 2019-03-03 16:19:50 +01:00
spycrab 103cb430f4 Qt/ControllerWindow: Make message boxes modal 2019-03-03 16:16:25 +01:00
spycrab 7f9084f87f Qt/USBDeviceATWhitelistD: Make message boxes modal 2019-03-03 16:12:12 +01:00
spycrab 606c61e7c9 Settings/InterfacePane: Make message box modal 2019-03-03 16:05:07 +01:00
spycrab 0c886b5e3c Settings/GeneralPane: Make message boxes modal 2019-03-03 15:56:23 +01:00
spycrab 386accd2c8 Qt/MappingButton: Don't show ticks 2019-03-03 15:49:24 +01:00
spycrab 19bf2c166d UpdaterCommon: Move most of the programs here 2019-03-03 15:02:44 +01:00
spycrab 2a3c075330
Merge pull request #7843 from spycrab/mac_update_label
MacUpdater: Properly display and truncate update messages
2019-03-03 13:30:43 +01:00
spycrab 833cb88c38 MacUpdater: Properly display and truncate update messages 2019-03-03 13:27:18 +01:00
spycrab 1e13ebd091 Updater: Support HiDPI 2019-03-03 12:56:26 +01:00
Mat M 8156df2758
Merge pull request #7837 from jordan-woyak/deadzone-math-fix
ControllerEmu: Deadzone math fix.
2019-03-03 02:32:04 -05:00
Mat M 7a8ddbaccb
Merge pull request #7840 from jordan-woyak/game-config-save-fix
DolphinQt: Fix invalid error message when trying to save a zero-sized game config.
2019-03-03 02:27:12 -05:00
Jordan Woyak 2cec5d0a08 DolphinQt: Fix invalid error message when trying to save a zero-sized game config. 2019-03-02 21:23:39 -06:00
Jordan Woyak ecb67cf815 ControllerEmu: Deadzone math fix. 2019-03-01 17:40:10 -06:00
Tillmann Karras 24ba3bf2f2 TextureConversionShader: fix XFB decoding shader 2019-03-01 21:54:33 +00:00
spycrab 3c2ebec84e
Merge pull request #7828 from spycrab/updatecommon2
UpdaterCommon: Prevent duplicate downloads and respect symlinks
2019-02-28 13:04:15 +01:00
spycrab 7b66b3de8d UpdaterCommon: Prevent duplicate downloads and respect symlinks 2019-02-28 12:59:38 +01:00
Tilka 6be35422e9
Merge pull request #7832 from stenzek/xfb-decoding-regression
TextureCache: Fix GPU decoding of XFB copies
2019-02-28 11:03:25 +00:00
Stenzek 8192c0dd48 TextureConversionShader: Fix XFB decoding shader for D3D
D3D has no mix() equivalent with a bool parameter. Compilers should be
able to optimize the ternary into a select anyway.
2019-02-28 20:43:50 +10:00
Stenzek 21d81f99ff VideoBackends: Fix GPU decoding of XFB buffers
Was using UNORM instead of UINT, resulting in invalid values.
2019-02-28 20:35:22 +10:00
Stenzek db6763019d TextureCache: Fix GPU decoding of XFB copies not falling back to CPU 2019-02-28 20:19:37 +10:00
Stenzek 7f0111b022 TextureCache: Fix EFB2RAM copies at >1xIR sampling out-of-range 2019-02-28 20:11:46 +10:00
chargeflux 77777cd1d7 Fix QComboBox background and transparency workaround on macOS 2019-02-26 17:03:38 -05:00
spycrab 902e407ae5
Merge pull request #7823 from spycrab/updatercommon
Move shared Updater logic into UpdaterCommon
2019-02-26 22:15:42 +01:00
spycrab f10fdce158
Merge pull request #7825 from spycrab/fileutil_osx_path
Common/FileUtil: Fix GetExePath() cutting off the bundle name
2019-02-26 21:56:27 +01:00
spycrab 873d22b8b2
Merge pull request #7826 from spycrab/issue_11586
MacUpdater: Set LSUIElement to true
2019-02-26 21:52:45 +01:00
spycrab f0b749d8e2 MenuBar: Implement proper update-capabilities check 2019-02-26 20:42:55 +01:00
spycrab d0d85c15b4 MacUpdater: Set LSUIElement to true 2019-02-26 20:26:52 +01:00
spycrab 3e3f6922c0 Common/FileUtil: Fix GetExePath() cutting off the bundle name 2019-02-26 20:00:23 +01:00
spycrab 9c84524684 Move shared Updater logic into UpdaterCommon 2019-02-26 19:27:36 +01:00
spycrab 0ebf3b90e3 MacUpdater: Fix permissions some more 2019-02-26 17:16:04 +01:00
Tilka 19f4772e47
Merge pull request #7816 from JosJuice/titledatabase-edge-cases
Fix edge cases in TitleDatabase, cover downloading, Gecko code downloading
2019-02-26 04:25:45 +00:00
Tilka 02f5a7505f
Merge pull request #7821 from jordan-woyak/emu-turntable-effect-dial-fix
WiimoteEmu: Fix turntable effect dial mapping.
2019-02-26 04:22:45 +00:00
Tilka 6ce7f44b8a
Merge pull request #7753 from stenzek/videocommon-all-the-things
Move a significant amount of video backend logic to VideoCommon
2019-02-26 04:21:05 +00:00
Jordan Woyak 4b830ddc26 WiimoteEmu: Fix turntable effect dial mapping. 2019-02-25 15:54:36 -06:00
Tillmann Karras 8396ad541b DolphinQt: clean up includes 2019-02-25 20:15:12 +00:00
Tillmann Karras 8b330e1ca3 Discord: fix typo 2019-02-25 19:31:49 +00:00
JosJuice 71e6243c54 TitleDatabase: Don't hardcode HBC IDs that actually are in GameTDB 2019-02-25 19:55:49 +01:00
JosJuice 9df763b4ac TitleDatabase: Don't merge multiple languages into same map
Instead of selecting languages based on the user config at the time
of TitleDatabase creation and merging the different languages into one
map for GC and one map for Wii, have one map for each language, and
have the caller supply the language they want. This makes us not need
the IsGCTitle function, which is inaccurate for IDs that start with D.
2019-02-25 19:55:46 +01:00
JosJuice 8842a0f402 Keep track of GameTDB ID separately from game ID
The difference between Dolphin's game IDs and GameTDB's game IDs
is that GameTDB uses four characters for non-disc titles, whereas
Dolphin uses six characters for all titles.

This fixes:

- TitleDatabase considering Datel discs to be NHL Hitz 2002
- Gecko code downloading not working for discs with IDs starting with P
- Cover downloading mixing up discs with channels (e.g. Mario Kart Wii
  and Mario Kart Channel) and making extra HTTP requests. (Android was
  actually doing a better job at this than DolphinQt!)
2019-02-25 19:54:25 +01:00
Mat M d27036eb77
Merge pull request #7814 from JosJuice/overwrite-aspect-mode
VideoConfig: Don't overwrite aspect_mode with suggested_aspect_mode
2019-02-25 13:29:03 -05:00
Mat M fad9c0cc93
Merge pull request #7813 from jordan-woyak/wiimote-emu-ir-enable-fix
WiimoteEmu: Minor IR Camera behavior fix.
2019-02-25 13:28:14 -05:00
spycrab 96786d0501 MacUpdater: Retain file permissions 2019-02-25 10:14:26 +01:00
Jordan Woyak d64f29d234 WiimoteEmu: Minor IR Camera behavior accuracy fix. 2019-02-23 16:40:47 -06:00
Tilka 83ff3aa691
Merge pull request #7815 from JosJuice/elf-dol-size
Don't show asterisk next to DOL/ELF size in game list
2019-02-23 15:46:03 +00:00
JosJuice 5ace78bf20 Don't show asterisk next to DOL/ELF size in game list 2019-02-23 16:17:39 +01:00
JosJuice ea7b96342b VideoConfig: Don't overwrite aspect_mode with suggested_aspect_mode
Unnecessary since b93b7ec. It was needed before that commit becase
RenderBase.cpp only was checking the value of aspect_mode, not
suggested_aspect_mode.
2019-02-23 16:00:18 +01:00
Jordan Woyak 58f1ff3773 WiimoteEmu: Minor accuracy fixes. 2019-02-20 17:44:55 -06:00
Stenzek f039149198 Move most backend functionality to VideoCommon 2019-02-19 16:57:54 +10:00
Stenzek 933f3ba008 TextureCache: Don't copy out-of-range rectangles when stitching textures
This can cause driver crashes or GPU hangs if we do.
2019-02-17 16:35:43 +10:00
Stenzek 2165523fdc TextureConverterShader: Write EFB2Tex XFB copies with alpha value of 1
This way we don't end up with artifacts of the EFB's alpha values in
frame dumps. XFB copies loaded from RAM also set the alpha to 1, so this
will match.
2019-02-17 16:35:43 +10:00
Stenzek 50bdcb8d9c TextureCache: Bind textures/samplers after loading all textures
Since loading textures can result in rendering, e.g. partial copies, we
don't want to disturb partially-bound GX state.
2019-02-17 16:35:43 +10:00
Stenzek eabde77892 CMake: Add an ENABLE_NOGUI option 2019-02-15 18:40:46 +10:00
Stenzek 836f76da89 DolphinNoGUI: Runtime selection of platform 2019-02-15 18:40:46 +10:00
Stenzek f9869cb216 Vulkan: Support runtime selection of WSI 2019-02-15 18:40:46 +10:00
LAGonauta c209d07c96 Removed FFDShow DPL2 decoder 2019-02-13 22:52:41 -02:00
LAGonauta f4cf1e4f49 Removed zeroing-out the LFE as it is not needed anymore.
Also removed minimum number of frames needed when decoding DPL2, and use
std::numeric_limits to clamp the samples when needed.

Clamping is still needed, but those samples are much rarer now and depend
on the game.
2019-02-13 22:52:40 -02:00
LAGonauta fdfd9d6953 Cleaned up PulseAudio as we now use FreeSurround 2019-02-13 22:52:40 -02:00
LAGonauta df631f0d75 Swapped FFDShow's DPL2 decoder by FreeSurround
Added class in AudioCommon for the surround decoder
2019-02-13 22:52:40 -02:00
JosJuice 5067e96f37 Minor fixes to translatable strings 2019-02-13 18:54:45 +01:00
Tilka 131f4931fb
Merge pull request #7792 from jordan-woyak/auto-calibration
DolphinQt/ControllerEmu: Add stick calibration "wizard".
2019-02-13 02:13:27 +00:00
Tilka 8d59d1bb11
Merge pull request #7798 from ShFil119/impr/empty
Use empty instead of size
2019-02-13 01:59:43 +00:00
Filip Gawin 49fe9f5db1 Use empty instead of size 2019-02-13 00:03:49 +01:00
Mat M 6b22693e6e
Merge pull request #7796 from stenzek/glx-context
GLContext: Fix shared context creation error on Mesa
2019-02-11 09:23:52 -05:00
spycrab eb11d045d7
Merge pull request #7790 from spycrab/rp_fixes
ResourcePacks: Fix various bugs
2019-02-11 11:09:43 +01:00
spycrab f86b34ceb9 ResourcePacks: Fix various bugs 2019-02-11 11:05:35 +01:00
Tilka 4d85bb2d18
Merge pull request #7782 from jordan-woyak/wiimote-emu-speaker-pan
WiimoteEmu: Change speaker pan to use "constant power pan law".
2019-02-11 00:20:07 +00:00
Jordan Woyak 3c77b4aa4b WiimoteEmu: Change speaker pan to use "constant power pan law" and change UI setting max value from 127 to 100. 2019-02-10 17:55:11 -06:00
Tilka 226affe00b
Merge pull request #7788 from jordan-woyak/mapping-ui-clear-button
DolphinQt: Make the mapping window clear button use ControllerEmu's clear functionality.
2019-02-10 23:29:33 +00:00
Tilka 33e51da3b8
Merge pull request #7785 from Tilka/patch_editor
DolphinQt: limit patch padding to 8
2019-02-10 23:22:20 +00:00
Jordan Woyak 0064f70c8a DolphinQt/ControllerEmu: Replace Input Radius/Shape settings with an input calibration "wizard". 2019-02-10 07:55:47 -06:00
Stenzek cecefa2d97 ChunkFile: Don't access element zero of empty container
This was causing assertion failures in debug MSVC builds.
2019-02-10 13:28:50 +10:00
Stenzek ef3306e954 GLContext: Fix shared context creation error on Mesa
This was failing if the first version tried (4.6) didn't succeed.
2019-02-09 21:51:23 +10:00
spycrab 0abb1c6ea6 Qt/LogWidget: Make logging asynchronous 2019-02-08 13:21:21 +01:00
Anthony 2987e8313a
Merge pull request #7752 from 8times9/text-tweaks
Qt: Minor text tweaks
2019-02-07 10:21:00 -08:00
8times9 d45dad7bf7 Qt: Minor text tweaks 2019-02-07 11:53:07 -06:00
Jordan Woyak 64c3c52ef3 DolphinQt: Make the mapping window clear button use ControllerEmu's clear functionality. 2019-02-06 17:40:58 -06:00
spycrab 63cdebba88 UICommon/AutoUpdate: Add macOS support 2019-02-06 20:50:09 +01:00
spycrab 80f4181f60 MacUpdater: Initial implementation 2019-02-06 20:50:09 +01:00
spycrab fa01db4904 Qt/GameConfigEdit: Fix some settings being in the wrong section 2019-02-06 09:42:33 +01:00
Tillmann Karras 03a7071c57 DolphinQt: limit patch padding to 8 2019-02-05 04:59:52 +00:00
Tillmann Karras 74c5e60327 DolphinQt: show game descriptions in one line 2019-02-03 22:32:36 +00:00
Anthony f65b3a998c
Merge pull request #7739 from zackhow/multib
Android: Disable backend multithreading and add option to gfx menu
2019-02-03 12:44:00 -08:00
Anthony e05cc3f61d
Merge pull request #7718 from cristian64/display_listcolumns_via_rightclick_on_header
Qt/MainWindow: Also display "List Columns" menu via right-click on table's header.
2019-02-03 12:41:39 -08:00
Anthony 227a26490d
Merge pull request #7773 from spycrab/rp_compression
ResourcePacks: Support compression
2019-02-03 12:34:11 -08:00
Anthony eee24cd1ce
Merge pull request #7746 from Techjar/fix-hotkey-conflicts
[RFC] Core/HotkeyManager: Fix default hotkey conflicts
2019-02-03 12:26:14 -08:00
Tilka 8aaebfa2b3
Merge pull request #7716 from stenzek/stereo
Stereoscopy regression fixes
2019-02-03 19:57:01 +00:00
Anthony 4e825beddf
Merge pull request #7757 from jordan-woyak/wiimote-connection-status-checkmarks
WiimoteDevice: Update UI when wiimote connection status changes.
2019-02-03 10:28:08 -08:00
Anthony e9130734af
Merge pull request #7688 from jordan-woyak/evdev-improve
ControllerInterface: evdev: Cleanups and effect processing fixes.
2019-02-03 10:25:23 -08:00
Jordan Woyak 69b617ce76 WiimoteEmu: Remove redundant Matrix library and use the one in Common. 2019-02-03 12:02:02 -06:00
Jordan Woyak b9a00a40a9 Common: Move Matrix classes out of MathUtil into their own files and make their interface more friendly. 2019-02-03 11:35:31 -06:00
Jordan Woyak 9c1a8891e5 WiimoteEmu: Code cleanups. 2019-02-02 19:40:31 -06:00
Jordan Woyak 3945aa6242 WiimoteEmu: Fix battery level handling and remove old comments. 2019-02-02 19:40:31 -06:00
Jordan Woyak 6c0902ab0a WiimoteEmu: Add logic for enabling/disabling M+ and force it disabled for now. 2019-02-02 19:40:31 -06:00
Jordan Woyak 0d1fbe7bbc WiimoteEmu: Major renaming and cleanup. 2019-02-02 19:40:31 -06:00
Jordan Woyak b1f350ab1c WiimoteEmu: Cleanups, Kill some now-redundant constants. 2019-02-02 19:40:30 -06:00
Jordan Woyak 6e5847a790 WiimoteEmu: Fix wiimote pan setting from keeping center at half volume. 2019-02-02 19:40:30 -06:00
Jordan Woyak d3906e548d WiimoteEmu: Cleanup ack handling. Improve accuracy of report handling with unusual values. Eliminated outdated comments. 2019-02-02 19:40:30 -06:00
Jordan Woyak 3a889c35ad WiimoteEmu: Cleanups, Kill more magic numbers and use some enum classes. 2019-02-02 19:40:30 -06:00
Jordan Woyak 86c94b8b22 WiimoteEmu: Motion plus now works half of the time in Wii Sports Resort. 2019-02-02 19:40:30 -06:00
Jordan Woyak 0b4329e077 Implement the rest of the wiimote input reports. 2019-02-02 19:40:30 -06:00
Jordan Woyak 10c2101e72 WiimoteReal: Unbreak. 2019-02-02 19:40:30 -06:00
Jordan Woyak 42b9392784 WiimoteEmu: Cleanups and work towards making motion plus functional. 2019-02-02 19:40:30 -06:00
Jordan Woyak a25e8cb516 Advance save state version. 2019-02-02 19:40:30 -06:00
Jordan Woyak a0721b256f WiimoteEmu: Cleanup, kill some magic numbers, and unbreak wiimote speaker pan setting. 2019-02-02 19:39:29 -06:00
Jordan Woyak 372b12c67f WiimoteEmu: Emulated motion plus is detected by game now. 2019-02-02 19:39:29 -06:00
Jordan Woyak ba936923bd WiimoteEmu: Tweak the i2c bus code to better support motion plus and its passthrough port. 2019-02-02 19:39:29 -06:00
Jordan Woyak 84d32f6645 WiimoteEmu: Fix usage of ReportFeatures in TAS related code. 2019-02-02 19:39:29 -06:00
Jordan Woyak 4dc0aa6f8e WiimoteEmu: Process wiimote read data requests like they are on a real wiimote. It's not a queue. New requests are ignored and input is suppressed while processing a request. This simplifies the save state code greatly. 2019-02-02 19:39:29 -06:00
Jordan Woyak ec460da36d WiimoteEmu: Add wiimote speaker logic to i2c bus. Temporarily break the "pan" setting. 2019-02-02 19:39:29 -06:00
Jordan Woyak 62b66580c3 WiimoteEmu: Unbreak wiimote extensions. 2019-02-02 19:39:29 -06:00
Jordan Woyak ebc2e58fa4 WiimoteEmu: Partially emulate i2c bus to more closely simulate the real thing. Transfer most of IR camera logic to the i2c bus. Temporarily break everything else. 2019-02-02 19:39:29 -06:00
Jordan Woyak 6c40c47472 WiimoteEmu: Remove some remnants of hybrid wiimote. 2019-02-02 19:39:28 -06:00
Tilka a95b6e1b9b
Merge pull request #7735 from spycrab/qt_modal
Qt: Make more messages modal
2019-02-03 01:30:03 +00:00
Tilka cfbc852fb0
Merge pull request #7777 from jordan-woyak/input-rounding
ControllerEmu: Round input floats instead of casting.
2019-02-03 00:56:05 +00:00
Tilka 6ec11c6801
Merge pull request #7742 from jordan-woyak/si-device-change-fix
SI: Device change logic fix.
2019-02-03 00:52:23 +00:00
Jordan Woyak 3bc4968c11 ControllerEmu: Round input floats instead of casting to prevent almost-neutral values from being rounded down. 2019-02-02 15:12:07 -06:00
spycrab b6863ff0a2 ResourcePacks: Support compression 2019-02-02 15:54:06 +01:00
Tilka 28c0b5338e
Merge pull request #7738 from spycrab/core_warnings
Core: Fix some warnings
2019-02-02 14:13:21 +00:00
Tilka d55e276d0b
Merge pull request #7763 from jordan-woyak/steering-wheel-ff-fix
HW: SI_Device_GCSteeringWheel: Fix handling of force commands.
2019-02-02 13:12:51 +00:00
Tilka 2d75797c63
Merge pull request #7747 from stenzek/vulkan-shutdown
Vulkan: Shutdown fixes and cleanup/refactoring
2019-02-02 12:45:20 +00:00
Tilka 6dc16dda26
Merge pull request #7750 from jordan-woyak/gamelist-less-padding
DolphinQt: Reduce the padding between gamelist items.
2019-02-02 12:41:06 +00:00
Tilka eb7135ac9b
Merge pull request #7771 from stenzek/qt-non-looping-fifoplayer
DolphinQt: Connect Host::RequestStop() to MainWindow::RequestStop()
2019-02-02 12:28:55 +00:00
Tilka 0115906e41
Merge pull request #7767 from Tilka/chunkfile
ChunkFile: treat vectors/strings as sized arrays
2019-02-02 12:25:42 +00:00
Stenzek 31a5dd15a9 DolphinQt: Connect Host::RequestStop() to MainWindow::RequestStop()
The fact that this wasn't connected was causing fifoplayer to hang if
looping was disabled.
2019-02-02 13:36:46 +10:00
Admiral H. Curtiss fdd19c1b54 GCMemcard: Fix out of bounds access in F-Zero GX checksum calculation. 2019-02-01 17:50:19 +01:00
Tillmann Karras 4090c19e00 GeckoCodeConfig: fix Gecko Code downloading
For some reason the server always redirects once to the same location.
2019-02-01 13:44:58 +00:00
Tillmann Karras 3ff0e7dbd4 Common/HttpRequest: optionally follow redirects 2019-02-01 13:44:58 +00:00
Jordan Woyak 552392e4f6 HW: SI_Device_GCSteeringWheel: Fix handling of force commands. 2019-02-01 06:47:17 -06:00
Jordan Woyak b0cb100958 SI: Device change logic fix. 2019-02-01 06:43:24 -06:00
Tillmann Karras 04a92482bf ChunkFile: treat vectors/strings as sized arrays 2019-02-01 05:13:16 +00:00
JMC47 a129d60a57
Merge pull request #7762 from jordan-woyak/gcadapter-calibration
HW: SI_Device_GCAdapter: Restore calibration behavior for real gamecube controllers.
2019-01-31 23:47:09 -05:00
Tillmann Karras 45aeb86766 Fix -Wmissing-declarations warning 2019-02-01 03:06:01 +00:00
Mat M e5ca338958
Merge pull request #7761 from jordan-woyak/gccontroller-minor-cleanup
HW: SI_Device_GCController: Minor cleanup.
2019-01-31 21:29:55 -05:00
Tillmann Karras 5b4a5ca059 DolphinQt: cache filesystem icons for speed 2019-02-01 00:15:52 +00:00
JosJuice c1492aeb45
Merge pull request #7744 from stenzek/vsync
Renderer: Fix throttle-disable (TAB) hotkey when vsync is enabled
2019-01-31 22:44:10 +01:00
Jordan Woyak cb9896618f HW: SI_Device_GCAdapter: Restore calibration behavior for real gamecube controllers. 2019-01-31 08:38:25 -06:00
Jordan Woyak c54cc3fa38 HW: SI_Device_GCController: Minor cleanup. Remove a member/state variable that should just be a local variable. 2019-01-31 06:30:06 -06:00
JosJuice 419ba925b7
Merge pull request #7748 from jordan-woyak/compressed-game-indicator
DolphinQt: Display game list compressed file sizes with an asterisk.
2019-01-30 19:47:47 +01:00
JosJuice 9340ddc7c9
Merge pull request #7726 from zackhow/rumfast
Android: Optimize rumble call
2019-01-30 19:37:24 +01:00
Jordan Woyak 159d2b1cc3 HW/Wiimote: Don't reconnect wiimotes on ChangeWiimoteSource when the source hasn't actually changed. 2019-01-29 10:01:35 -06:00
Jordan Woyak 4bc576472c WiimoteDevice: Update UI when wiimote connection status changes to keep check marks in the menu bar accurate. 2019-01-29 07:57:51 -06:00
JMC47 0e1669e1c7
Merge pull request #7728 from jordan-woyak/pad-perfect-calib
SI_DeviceGCController: Calibrate to perfect neutral instead of initial input state.
2019-01-28 21:11:46 -05:00
JMC47 cf8da56297
Merge pull request #7751 from zackhow/motefix
Android: Don't grab wiimote report if size is < 1
2019-01-28 19:53:04 -05:00
Jordan Woyak efd5c36773 DolphinQt: Display game list file sizes with an asterisk when file-size differs from volume-size (e.g. when they are compressed). 2019-01-28 14:44:25 -06:00
JMC47 7907633126
Merge pull request #7715 from Techjar/qt-delete-unparented
Qt/MainWindow: Directly delete unparented dialogs
2019-01-28 06:42:07 -05:00
zackhow 831ab64e1c Android: Don't grab wiimote report if size is < 1
Fixes crash when using official wiimotes with the dolphin bar.
2019-01-27 16:43:19 -05:00
Jordan Woyak 3db904baba DolphinQt: Reduce the padding between gamelist items. 2019-01-27 14:00:22 -06:00
Jordan Woyak c386a6a875 DolphinQt: Fix selection of PP shader when using anaglyph 3D. 2019-01-27 13:23:42 -06:00
Techjar d70ea9e4ec Core/HotkeyManager: Fix default hotkey conflicts 2019-01-27 06:20:01 -05:00
Stenzek 3b033bf3f0 Vulkan: Move clear shader from Renderer to ShaderCache 2019-01-27 13:07:35 +10:00
Stenzek e2cf238ec4 Vulkan: Move swapchain related members from Renderer to SwapChain 2019-01-27 12:59:57 +10:00
Stenzek bd66db049a Vulkan: Use device-local functions where possible
Avoids a call into the loader library, which may improve performance
ever-so-slightly.
2019-01-27 12:51:04 +10:00
Stenzek ce1cc2d9fa Vulkan: Don't execute command buffer before shutting down
We don't need to, and this was causing occasional crashes on Adreno.
2019-01-27 12:41:10 +10:00
Stenzek b01df8670f Renderer: Fix throttle-disable (TAB) hotkey when vsync is enabled 2019-01-27 12:31:12 +10:00
zackhow 4979220cf0 Android: Optimize rumble call
Moved rumble call to IDCache since GetMethodID is expensive
2019-01-26 09:38:35 -05:00
Techjar 408029e8a3 Qt/MainWindow: Don't unpause after confirming shutdown
There's no good reason to do this, as it just causes running signals to
be sent as the core is shutting down.
2019-01-26 07:27:37 -05:00
zackhow 8a1eb34c38 Android: Default backendMultithreading to false on android 2019-01-25 19:22:07 -05:00
spycrab 51a219c54d
Merge pull request #7263 from spycrab/qt_ini_edit
Qt/GameConfigWidget: Complete overhaul
2019-01-26 00:45:46 +01:00
spycrab ff5556ce2f Qt/GameConfigWidget: Complete overhaul 2019-01-26 00:41:22 +01:00
JosJuice b14e540671
Merge pull request #7736 from stenzek/imgui-hidpi
RenderWidget: Fix mouse position for imgui on hidpi screens
2019-01-25 22:45:31 +01:00
spycrab 0691971d82 Core: Fix some warnings 2019-01-25 21:21:22 +01:00
spycrab f908612452 DolphinQt: Fix some warnings 2019-01-25 17:21:38 +01:00
Stenzek 3d8145af65 RenderWidget: Fix mouse position for imgui on hidpi screens 2019-01-26 01:31:58 +10:00
spycrab 787f2c6bd7 Qt: Make more messages modal 2019-01-25 16:16:27 +01:00
spycrab 6962d5bc52
Merge pull request #7478 from stenzek/imgui
Replace raster font with dear imgui
2019-01-25 15:08:40 +01:00
Stenzek 774480ba23 Vulkan: Set contents scale of Metal layer to screen factor
This gives us a native resolution framebuffer.
2019-01-26 00:02:04 +10:00
JMC47 e060b133e3
Merge pull request #7722 from 0xFEEDC0DE64/gamecube-settings-improvements
General GameCubePane improvements
2019-01-25 05:40:07 -05:00
Stenzek ee0fa548bc Vulkan: Don't bind last descriptor set if bounding box is unsupported
Fixes crash on a4xx/Vulkan.
2019-01-25 11:15:57 +10:00
Stenzek e9b02e7dd0 Vulkan: Remove unused UpdateUtilityUniformBuffer function 2019-01-25 11:15:57 +10:00
Stenzek 78588ce79d ShaderCache: Use imgui for shader compilation dialog 2019-01-25 11:15:57 +10:00
Stenzek e4b205c769 Decouple XFB scanout from presentation 2019-01-25 11:15:57 +10:00
Stenzek f1e7fb505b Renderer: Scale all imgui fonts by the backbuffer scale 2019-01-25 11:15:57 +10:00
Stenzek c9c0b85056 VideoBackends: Store a backbuffer 'scale'
This is a scaling factor, used for hi-dpi configurations.
2019-01-25 11:15:57 +10:00
Stenzek e03b8e899e Vulkan: Move texture upload buffer to ObjectCache 2019-01-25 11:15:57 +10:00
Stenzek 36ce47635b RenderWidget: Hook up to ImGui 2019-01-25 11:15:57 +10:00
Stenzek 63dd91628d Remove old RasterFont classes 2019-01-25 11:15:57 +10:00
Stenzek 600d1fc0bc Renderer: Use imgui for drawing debug text and OSD 2019-01-25 11:15:57 +10:00
Stenzek d1868d9475 RenderBase: Implement imgui rendering 2019-01-25 11:10:49 +10:00
Stenzek 396b7c2978 OGL: Invalidate tracked state when calling ResetAPIState()
Due to the current design, any of the GL state can be mutated after
calling this function, so we can't assume that the tracked state will
match if we call SetPipeline() after ResetAPIState().
2019-01-25 11:10:49 +10:00
Connor McLaughlin 224b23b979
Merge pull request #7729 from stenzek/adreno-sillyness
ShaderGen: Fix broken rendering on Adreno Vulkan drivers
2019-01-25 11:07:12 +10:00
JMC47 ddb1fbf701
Merge pull request #7500 from zackhow/pointer
Android: Add IR pointer control to touch overlay
2019-01-24 20:02:23 -05:00
0xFEEDC0DE64 e1fdf4ae9a General GameCubePane improvements (squashed commit) 2019-01-24 21:08:21 +01:00
Stenzek 1d61041985 ShaderGen: Don't use interface blocks on Vulkan without GS
Doing so causes the Adreno driver to choke and spew errors about
too many output locations/components, when clearly we're under
the limit.
2019-01-24 17:02:17 +10:00
zackhow d0b42286cf Load custom game IR values if they are not set
This is mostly for android so that a user can use the touchscreen to
accurately emulate pointer movements
2019-01-23 17:16:32 -05:00
Stenzek 68cb24172b ShaderGen: Omit some unused varyings when possible
Removes the clipPos varying unless slow-depth is used, and the
clipDistance varyings if geometry shaders are not used.
2019-01-23 18:34:22 +10:00
Jordan Woyak 3cd3e84486 SI_DeviceGCController: Calibrate pad origin on boot to perfect neutral values instead of initial input state. 2019-01-22 15:33:04 -06:00
Christian Aguilera 9a1a98a9f6 Qt/MainWindow: Also display "List Columns" menu via right-click on table's header. 2019-01-21 21:06:04 +00:00
Cody Wilson 00f786384d
Update GeckoCodes code download to use https
The WiiRD codes respository at https://geckocodes.org has started using HTTPS, and 301 Redirecting traffic from HTTP to HTTPS.  The HTTP client does not appear to be able to handle a 301 Redirect and instead fails when attempting to download codes. This pull request is purely a string replacement to set the URL as HTTPS.
2019-01-20 11:26:29 -05:00
zackhow 47d6406fd4 Android: Add touch to move pointer in overlay 2019-01-19 23:21:33 -05:00
Stenzek 1070192165 TextureCache: Fix a possible crash when partial updating palette textures 2019-01-19 23:38:02 +10:00
Stenzek 84bcbef944 TextureCache: Don't partial copy to non-existant texture layers 2019-01-19 23:38:00 +10:00
Stenzek ade255a5ff TextureCache: Fix broken XFB stitching with stereoscopy is enabled 2019-01-19 23:23:21 +10:00
Stenzek 6bfe4c83a5 OGL: Fix broken stereoscopy geometry shader for EFB copies 2019-01-19 23:22:57 +10:00
Techjar 47cc5b02e3 Qt/MainWindow: Directly delete unparented dialogs
Calling deleteLater in MainWindow's destructor doesn't work, as the
event loop will stop before it gets around to deleting these dialogs.
Seeing as this is a QObject destructor, we should already be on the
event loop anyways, so simply using delete should be safe.
2019-01-19 04:37:07 -05:00
Jordan Woyak 6cc8775510 ControllerInterface: evdev: Replace unclear bool parameter with enum class. 2019-01-17 12:10:50 -06:00
Jordan Woyak 52aa39991c ControllerInterface: evdev: Cleanup rumble effect processing so effects aren't removed and re-uploaded with every SetState() call. Split the "LeftRight" output into separate "Strong" and "Weak" outputs. Other minor cleanups. 2019-01-17 12:10:50 -06:00
Léo Lam 3627ef8a04
Merge pull request #7696 from TryTwo/Debugger_Restore_Tabbed_Docking
Qt/Debugger restore tabbed docking
2019-01-17 13:40:02 +01:00
Léo Lam c7373701cc
Merge pull request #7580 from Techjar/netplay-padmapping-type
NetPlay: Remove PadMapping type
2019-01-16 21:57:38 +01:00
Léo Lam fd3ef7ebc5
Merge pull request #7616 from AdmiralCurtiss/memcard-cleanup
Clean up GCMemcard a bit.
2019-01-16 21:56:40 +01:00
Léo Lam e19ee2ad4f
Merge pull request #7664 from jordan-woyak/kill-button-threshold
ControllerEmu: Killed the button group threshold setting.
2019-01-16 21:33:05 +01:00
Léo Lam 3892c3ac48
Merge pull request #7690 from NarryG/dragload-savestate
Reimplement savestate loading via drag and drop (resubmission of #7425)
2019-01-16 21:32:44 +01:00
Dan B d69740c8b4 Reimplement savestate loading via drag and drop 2019-01-16 21:19:31 +01:00
Léo Lam a8bc6f9899
Merge pull request #7693 from jordan-woyak/hotplug-callback-fix
ControllerInterface: Hotplug callback fixes.
2019-01-16 21:00:48 +01:00
Léo Lam b2de98cad1
Merge pull request #7680 from jordan-woyak/dinput-axis-range
DirectInput: Use more than 8 bits of precision on axis inputs.
2019-01-16 18:52:11 +01:00
Léo Lam 634ef78a26
Merge pull request #7705 from cristian64/master
Fixed crash when dereferencing the potential null pointer returned by GetSelectedGame().
2019-01-16 18:51:11 +01:00
Léo Lam c785ccba27
Merge pull request #7712 from linkmauve/gcadapter-flatten
Flatten a GCAdapter function
2019-01-16 18:48:15 +01:00
Emmanuel Gil Peyrot fb6fae2b2b Flatten GCAdapter function
Make CheckDeviceAccess() more flat by inverting checks, reducing
indentation and removing dead code.
2019-01-16 14:20:00 +01:00
Christian Aguilera ee5e2fd9f9 Fixed crash when dereferencing the potential null pointer returned by GetSelectedGame(). 2019-01-16 09:25:47 +00:00
Connor McLaughlin 5962316068
Merge pull request #7643 from weihuoya/texture-overlap
Texture: fx overlap src position
2019-01-16 08:49:36 +10:00
JMC47 1d3e3de44b
Merge pull request #7629 from JosJuice/auto-disc-change
Automatic disc change for 2-disc games
2019-01-15 13:01:36 -05:00
TryTwo b557faa386 Debugger restore tabbed docking 2019-01-11 14:32:27 -07:00
Jordan Woyak b425f86121 ControllerInterface: Allow hotplug callbacks to be unregistered and don't reload the entire config from the ini file on hotplug, just update the control references. This should fix a crash on shutdown on Android. 2019-01-10 18:32:16 -06:00
JMC47 012338288e
Merge pull request #7662 from jordan-woyak/mapping-indicators-make-pretty
ControllerEmu: Make mapping indicators pretty
2019-01-10 19:04:27 -05:00
zackhow 078fc74b54 Android/OGL: fix bounding box for OpenGL-ES
OpenGL-ES does not have glGetBufferSubData, so use glMapBufferRange instead
2019-01-09 21:08:49 -05:00
JosJuice d3e1d2ea00
Merge pull request #7666 from jordan-woyak/input-shutdown-fix
ControllerInterface: Shutdown order and race condition fix.
2019-01-08 14:39:47 +01:00
JosJuice b30a338dd6
Merge pull request #7683 from zackhow/removefullanalog
Android: Change all AnalogInputs to just inputs
2019-01-08 14:01:26 +01:00
Connor McLaughlin 0da5929226
Merge pull request #7626 from weihuoya/vulkan-oom
Always clean cache on render swap
2019-01-08 21:57:25 +10:00
weihuoya 66a7db3850 Always flush on swap 2019-01-08 18:28:59 +08:00
zackhow 02c649ba20 Android: Change all analoginputs to just inputs
Android doesn't report values for the inputs generated by FullAnalogInput so
there isn't a reason to add them as such. This also avoids a bug(for android)
where if there are three inputs(say 12, 11, and 121), and you generate a FullAnalogInput
with 12/11 then it will create another input with the name 121 which can cause conficts
with the real 121 input. This is probably not an issue on PC since most Axis inputs
are named and not numbered.
2019-01-07 21:52:39 -05:00
JMC47 3397824601
Merge pull request #7588 from Techjar/controller-dialog-wiimote-disabled-bug
Qt/ControllersWindow: Fix Wiimote settings not being re-enabled after quitting NetPlay
2019-01-07 16:55:36 -05:00
Anthony 3da06970d9
Merge pull request #7605 from zackhow/jitarmconfigs
Android: Add Jit debug options to menu.
2019-01-07 13:50:57 -08:00
Anthony c73adf8d8e
Merge pull request #7656 from JMC47/DanceMatFix
Fix Emulated Dance Mat
2019-01-07 13:48:50 -08:00
Jordan Woyak a7c45fb49e DirectInput: Use more than 8 bits of precision on axis inputs. 2019-01-06 08:14:37 -06:00
Admiral H. Curtiss 04bcc64e82 GCMemcard: Update formatting of memcard field comments in header. 2019-01-06 14:40:38 +01:00
Admiral H. Curtiss e6acbf7cbe GCMemcard: 'Broken File000' commented out code can't work anymore, but leave a comment about it. 2019-01-06 14:18:00 +01:00
Admiral H. Curtiss 41767daabc GCMemcard: Remove obsolete commented out code, this is handled via InitActiveDirBat() and related. 2019-01-06 14:12:59 +01:00
Admiral H. Curtiss 111f0b38e0 GCMemcard: Update panic alerts and comments to refer to 1st/2nd dir/BAT blocks. 2019-01-06 14:12:59 +01:00
JMC47 0ca9accd8b
Merge pull request #7640 from jordan-woyak/input-fixes
ControllerInterface: Output/Rumble fixes
2019-01-05 17:16:35 -05:00
JMC47 d75e9b2d5d
Merge pull request #7677 from Techjar/netplay-peer-init-fix
NetPlay: Fix server peer initialization hang
2019-01-05 15:10:39 -05:00
Jordan Woyak a995e2f5ba ControllerInterface: Set DInput FF effect parameters sanely. This fixes a crash with periodic effects and my GCPad adapter (probably a divide by zero behind the scenes). 2019-01-05 13:00:04 -06:00
JMC47 1cd5debecf
Merge pull request #7585 from Techjar/netplay-wiimote-extension
NetPlay: Sync Wiimote extension
2019-01-05 05:57:36 -05:00
JosJuice 0c622929ba Add M3U file support for automatic disc switching 2019-01-04 09:24:42 +01:00
JosJuice 352ac91a1c Add a delay before automatically switching discs
Some games don't behave as expected if we eject the disc as soon as
we receive the DVDLowStopMotor command. For instance, Baten Kaitos
never shows the prompt to switch discs or the "Reading disc..." text
(but works correctly other than that).
2019-01-04 09:24:41 +01:00
JosJuice b608e80d8e Don't do automatic disc switching when running e.g. the Wii Menu
We only want automatic disc switching to happen when the game actually
is running, but software like the Wii Menu also uses DVDLowStopMotor.
2019-01-04 09:24:41 +01:00
JosJuice bd665aad5d Automatic disc change for 2-disc games 2019-01-04 09:24:38 +01:00
Mat M 931af76da3
Merge pull request #7668 from spycrab/rpack_fix
UICommon/ResourcePack: Fix packs without manifests crashing Dolphin
2019-01-03 13:59:07 -05:00
JosJuice a8e5f2b922
Merge pull request #7230 from ligfx/remove_clamp_draw_size
RenderBase: don't clamp draw size to window
2019-01-03 18:26:41 +01:00
spycrab c2c23677ed UICommon/ResourcePack: Fix resource packs without manifests being able to crash dolphin 2019-01-02 22:47:18 +01:00
Jordan Woyak 25d43ffd98 ControllerInterface: Shutdown order and race condition fix. 2019-01-02 08:19:42 -06:00
Jordan Woyak 88e588673b Qt Game List: Sort game titles "naturally". e.g. 10 comes after 9. 2019-01-01 06:06:02 -06:00
Jordan Woyak df43fd9472 ControllerEmu: Killed the Buttons group threshold setting. 2018-12-31 08:35:31 -06:00
Jordan Woyak 7efa96eda9 ControllerEmu: code cleanup. 2018-12-30 10:52:45 -06:00
Jordan Woyak 1c24bef594 MappingUI: Organize some color constants and hide IR adjusted Z value when cursor is hidden. 2018-12-30 09:50:22 -06:00
Jordan Woyak 7a00f55cfa ControllerEmu::Cursor: Add input radius/shape settings to IR Cursor mappings to allow use of round inputs in absolute mode. Make relative input option obey the center/width/height settings. Make the mapping indicator pretty and actually show what the relative/center/w/h settings are doing. 2018-12-30 09:10:32 -06:00
Jordan Woyak 247fa8c628 WiimoteEmu: Remove redundant threshold setting from hotkeys button group. 2018-12-29 16:19:28 -06:00
Jordan Woyak c3dc3c106c ControllerEmu: Reorganize stick reshaping code and use it for emu wiimote tilt as well. Also make the tilt mapping indicator pretty. 2018-12-29 16:06:03 -06:00
Jordan Woyak 6a6195f53c ControllerEmu: Implement dead zone setting for triggers. 2018-12-29 13:56:35 -06:00
Jordan Woyak def5c6e573 Mapping UI: Reorganize wiimote extension layouts a bit so things fit better. 2018-12-29 12:59:47 -06:00
Jordan Woyak 970073084a Mapping UI: Make the mixed trigger indicator styling match that of the analog sticks. 2018-12-29 12:46:05 -06:00
spycrab 75b8824c95
Merge pull request #7658 from spycrab/debugger_show
Qt/Debugger: Add Show in Code / Show in Memory
2018-12-29 15:08:51 +01:00
JMC47 f8586bb83c Fix Emulated Dance Mat
I have no idea how it got so broken, but this makes it so both the
Active Life and DDR Mario/Wii games can be fully configured.
2018-12-28 17:47:49 -05:00
Jordan Woyak 2765475e7b HW: DK Bongos actual fix 2018-12-28 15:15:29 -06:00
spycrab 3e3f9565ec Qt/Debugger: Add Show in Code / Show in Memory 2018-12-28 20:30:38 +01:00
Mat M dd1fc70d70
Merge pull request #7644 from jordan-woyak/dk-bongos-fix
HW: DK Bongos clap fix and cleanup
2018-12-28 06:41:10 -05:00
Mat M 2d379446b5
Merge pull request #7642 from MerryMage/fprf-whole
EmuCodeBlock: Fix bug in SetFPRF: Should only consider lower double
2018-12-28 06:37:43 -05:00
Mat M b7db1f020b
Merge pull request #7624 from lioncash/paired-single
PowerPC: Remove separate macros for paired singles
2018-12-28 06:32:45 -05:00
Mat M 8c9f553734
Merge pull request #7620 from lioncash/paired
Interpreter: Handle HID2.PSE and HID2.LSQE bits
2018-12-28 06:30:37 -05:00
Mat M b37455ef46
Merge pull request #7652 from JMC47/NetplayWarning
Update Netplay Main Page Notices
2018-12-28 06:22:56 -05:00
Mat M 2749c50843
Merge pull request #7653 from jordan-woyak/ini-cleanup
IniFile: Minor cleanup. Removed unused function. Improved template usage.
2018-12-28 06:21:24 -05:00
Mat M de03019c77
Merge pull request #7628 from jordan-woyak/stick-shapes
ControllerEmu: Add ability to reshape analog sticks. Make the mapping indicator pretty.
2018-12-28 06:18:56 -05:00
MerryMage 77e9aa48bc Jit64: Remove Jitx86Base class 2018-12-28 09:15:26 +00:00
Jordan Woyak c614f5f534 ControllerEmu: Allow analog stick input radius greater than one. Useful for rounded-square inputs of xbox controllers. 2018-12-27 19:16:37 -06:00
Jordan Woyak da9bcf83ef InputCommon: Simplified StickGate interface and moved class into its own file. Changed default input radius to perform no resizing. Tweaked the indicator colors a bit to improve visibility. Cleaned up some math and code. 2018-12-27 18:31:46 -06:00
Jordan Woyak ceb28a2302 Add ability to reshape analog sticks from square/circle to octagon and make the analog stick mapping indicator pretty. 2018-12-27 18:31:46 -06:00
Tilka bfb9b1aca5
Merge pull request #7602 from CrystalGamma/stop-g_jit
stop using g_jit outside of JitInterface
2018-12-27 23:12:14 +01:00
Tilka 89eedc8c1b
Merge pull request #7625 from jordan-woyak/emu-shake-fix
WiimoteEmu: Shaking emulation fix
2018-12-27 22:32:50 +01:00
MerryMage 26bc38d25d Jit64: Fix instruction breakpoints
Broken by 5236dc3.
2018-12-27 20:11:26 +00:00
Jordan Woyak a464025bba IniFile: Minor cleanup. Removed unused function. Improved template usage. 2018-12-26 20:15:32 -06:00
JMC47 e6b859a923 Update Netplay Main Page Warnings
We now support automatically syncing most things.  Add Dual Core Netplay
Warning.  Update Wii Remote Netplay string since it now kinda works.
2018-12-26 14:23:43 -05:00
Mat M bd527e62ef
Merge pull request #7647 from MerryMage/emit-singles
x64Emitter: Add some single-precision instructions
2018-12-26 09:33:06 -05:00
JosJuice 5b97ea8b40
Merge pull request #7606 from booto/dtk_pos_align
DTK: Report position in increments of 0x8000
2018-12-26 10:22:40 +01:00
MerryMage da7608ff9f x64Emitter: Add some single-precision instructions 2018-12-26 00:23:42 +00:00
JosJuice 2ff1bfdc85
Merge pull request #7646 from leoetlino/temporary-to-permanent
WiiUtils: Clear IPL.TID when re-installing a title manually
2018-12-25 23:46:47 +01:00
Léo Lam 0aef6bc834 WiiUtils: Clear IPL.TID when re-installing a title manually
If the user tries to permanently install a title that has already been
imported, and if that title is currently marked as a temporary title
in IPL.TID, that flag should be cleared.
2018-12-25 20:49:11 +01:00
Jordan Woyak 43f5d4973e Fix wiimote/nunchuk acceleration value clamping (off-by-one).
Add in shaking acceleration rather than overwritting it so it doesn't look like the device is in free-fall. This fixes shaking in "Batman: TBATB". It appears the game only detects shaking along the z-axis and expects gravity to exist.
2018-12-25 12:10:31 -06:00
Jordan Woyak 56256d8624 HW: DK Bongos clap fix and cleanup 2018-12-25 11:24:09 -06:00
Lioncash 244d083f0e PowerPC: Remove separate macros for paired singles
Previously, PowerPC.h had four macros in it like so:

\#define rPS0(i) (*(double*)(&PowerPC::ppcState.ps[i][0]))
\#define rPS1(i) (*(double*)(&PowerPC::ppcState.ps[i][1]))

\#define riPS0(i) (*(u64*)(&PowerPC::ppcState.ps[i][0]))
\#define riPS1(i) (*(u64*)(&PowerPC::ppcState.ps[i][1]))

Casting between object representations like this is undefined behavior.
Given this is used heavily with the interpreter (that is, the most
accurate, but slowest CPU backend), we don't exactly want to allow
undefined behavior to creep into it.

Instead, this adds a helper struct for operating with the paired singles,
and replaces the four macros with a single macro for accessing the
paired-singles/floating-point registers.

This way, it's left up to the caller to explicitly decide how it wants to interpret
the data (and makes it more obvious where different interpretations of
the same data are occurring at, as there'll be a call to one of the
[x]AsDouble() functions).
2018-12-25 10:35:09 -05:00
JosJuice ca2a2c98f2
Merge pull request #7627 from Techjar/netplay-disable-bt-passthrough
Core/BootManager: Disable bluetooth passthrough when booting NetPlay
2018-12-25 15:48:08 +01:00
JosJuice 08ae6d7706
Merge pull request #7525 from JosJuice/nand-title-region
Accurate region detection for NAND titles
2018-12-25 15:36:00 +01:00
weihuoya 184b2edc30 fx texture overlap 2018-12-25 21:24:25 +08:00
Jordan Woyak 0f19c4a40f ControllerInterface: DInput: Update force feedback effects in a thread. This should prevent slowdowns experienced by a handful of users. 2018-12-24 19:40:58 -06:00
MerryMage 0deed2a5af EmuCodeBlock: Fix bug in SetFPRF: Should only consider lower double 2018-12-24 19:02:43 +00:00
Markus Wick e7b53540d8
Merge pull request #7634 from MerryMage/downcount-on-exit
Jit64: Check downcount at block exit, not block entry
2018-12-23 19:34:12 +01:00
MerryMage 5236dc31a6 Jit64: Check downcount at block exit, not block entry 2018-12-23 18:03:29 +00:00
Markus Wick 54f37c3bae
Merge pull request #7631 from MerryMage/crXXX-AeqB
Jit_SystemRegisters: Special-case crXXX for CRBA == CRBB
2018-12-23 17:55:09 +01:00
spycrab fc998093cc
Merge pull request #7600 from spycrab/resource_pack
Implement resource packs
2018-12-23 16:04:05 +01:00
Jordan Woyak d5df56c677 ControllerInterface: Make CoalesceExpression not set the inactive child's value (rumble) to 0. This caused rumble to not enable when a control expression was both a valid "bareword" and "complex" expression. 2018-12-22 11:17:05 -06:00
Jordan Woyak a8d0afe219 Reduce input mapping detection time to 3 seconds because 5 seconds was ridciculously long and output (rumble) testing time to 2 seconds because 5 seconds was annoyingly long. 2018-12-22 10:58:34 -06:00
degasus 64378c90da JitArm64: Fix RC calculation of srawix.
Seems like it was missed from the early implementation.
2018-12-22 17:31:14 +01:00
Jordan Woyak 3a145aeae4 ResetRumble on emu pause/stop regardless of presence of DInput/Xinput as that's not relevant. All the backends would like to stop rumbling. 2018-12-22 07:31:36 -06:00
zackhow 233b00fb7e ConfigManager: add save/load for Jit debug options 2018-12-21 15:06:37 -05:00
MerryMage 174d2b0230 crXXX: Avoid loading twice when CRBA == CRBB 2018-12-21 11:33:18 +00:00
MerryMage 07c146e7e2 crXXX: Remove unnecessary CRBA == CRBD constraint for crclr and crset 2018-12-21 11:20:06 +00:00
spycrab 71d53c922f Implement resource packs 2018-12-19 11:03:09 +01:00
Techjar cf8b730c61 Core/BootManager: Disable bluetooth passthrough when booting NetPlay
Bluetooth passthrough does not and never will work on NetPlay, so we'll
just force the use of emulated bluetooth when booting in NetPlay.
2018-12-17 18:22:13 -05:00
Jordan Woyak 79eb065cf3 Reduce emulated shaking frequency to 6hz. (something more humanly possible) (was ~13hz) 2018-12-15 10:36:22 -06:00
Jordan Woyak a8a6bdcdd2 Compute emulated classic controller calibration data instead of having hardcoded values. 2018-12-15 10:27:06 -06:00
Jordan Woyak 6848812a31 Produce emulated nunchuk calibration data. 2018-12-15 10:27:06 -06:00
CrystalGamma 2f490e44fb stop using g_jit outside of JitInterface
Replace g_jit in x86-64 ASM routines code by m_jit member reference
2018-12-15 01:58:58 +01:00
Lioncash 6d394d03fe Common/GLContext: Make member functions const qualified where applicable
These don't modify object state, so they can be const qualified.
2018-12-14 11:02:26 -05:00
Lioncash 52cae18b01 Interpreter: Handle paired-single HID2.PSE and HID2.LSQE bits
These bits enable or disable paired-single execution based on how
they're set. If PSE isn't set, then all paired-single instructions are
illegal. If PSE is set, but LSQE isn't set, then psq_l, psq_lu, psq_st
and psq_stu are illegal to execute.

Also thanks go out to my roommate @Veegie for letting me use his Wii as
a blasting ground for tests, since mine isn't on hand right now. It only
caught on fire twice and only burned down half of the house through the
process; what a team player.
2018-12-13 22:48:05 -05:00
Lioncash c87a2f57b4 Interpreter_SystemRegisters: Handle reserved/read-only bits for HID2 in mtspr 2018-12-13 11:39:40 -05:00
Admiral H. Curtiss fa6782f841 GCMemcard: Required declaration before C++17. 2018-12-10 20:24:20 +01:00
Admiral H. Curtiss 36d84c6959 GCMemcard: Slightly nicer definition of UNINITIALIZED_GAMECODE. 2018-12-10 20:24:20 +01:00
Admiral H. Curtiss ca2c7679df GCMemcard: Rewrite DEntry_IconFmt() and DEntry_AnimSpeed() to make more sense. 2018-12-10 20:24:20 +01:00
Admiral H. Curtiss 2351a60567 GCMemcard: Let GetDEntry() return std::optional<DEntry>. 2018-12-10 20:24:20 +01:00
Admiral H. Curtiss 860e003b0c GCMemcard: Remove needless second definition of DENTRY_SIZE. 2018-12-09 22:28:58 +01:00
Admiral H. Curtiss 3d77a43e67 GCMemcard: Use std::array for GCMBlock.m_block. 2018-12-09 22:28:58 +01:00
Admiral H. Curtiss ceb9cb53c6 GCMemcard: Rename GCMBlock.block to m_block to match naming conventions. 2018-12-09 22:28:58 +01:00
Admiral H. Curtiss fc70b60d8b GCMemcard: Access active directory/BAT via methods instead of pointers. 2018-12-09 22:28:58 +01:00
Admiral H. Curtiss 7ff65db3b2 GCMemcard: As far as I can tell, the directory and BAT blocks aren't really main and backup, but just two blocks that store data are written to alternately. So store them as an std::array of 2 blocks instead of an explicit 'backup' block. 2018-12-09 22:28:58 +01:00
Admiral H. Curtiss 0aaf24b9cc GCMemcard: Rename GCMemcard variables to match our naming conventions. 2018-12-09 22:28:58 +01:00
Admiral H. Curtiss 4d4b5442bd GCMemcard: Use std::array and BigEndianValue for BlockAlloc.m_map. 2018-12-09 22:28:57 +01:00
Admiral H. Curtiss eb6cc3dbab GCMemcard: Use BigEndianValue for BlockAlloc.m_last_allocated_block. 2018-12-09 22:28:57 +01:00
Admiral H. Curtiss d3b61c3ff0 GCMemcard: Use BigEndianValue for BlockAlloc.m_free_blocks. 2018-12-09 22:28:57 +01:00
Admiral H. Curtiss 88bdab6fe6 GCMemcard: Use BigEndianValue for BlockAlloc.m_update_counter. 2018-12-09 22:28:57 +01:00
Admiral H. Curtiss 0f776fb091 GCMemcard: Use BigEndianValue for Directory.m_update_counter. 2018-12-09 22:28:57 +01:00
Admiral H. Curtiss 2d77096d63 GCMemcard: Use std::array for Directory's members. 2018-12-09 22:28:57 +01:00
Admiral H. Curtiss f8488f4561 GCMemcard: Use std::array for DEntry.m_unused_2. 2018-12-09 22:28:57 +01:00
Admiral H. Curtiss 4175fdf28d GCMemcard: Use std::array for DEntry.m_makercode. 2018-12-09 22:28:57 +01:00
Admiral H. Curtiss deadec608e GCMemcard: Use std::array for DEntry.m_gamecode. 2018-12-09 22:28:57 +01:00
Admiral H. Curtiss 0c638ad858 GCMemcard: Use std::array for DEntry.m_filename. 2018-12-09 22:28:56 +01:00
Admiral H. Curtiss 443729d2c3 GCMemcard: Use BigEndianValue for DEntry.m_comments_address. 2018-12-09 22:28:56 +01:00
Admiral H. Curtiss 8a920dac93 GCMemcard: Use BigEndianValue for DEntry.m_block_count. 2018-12-09 22:28:56 +01:00
Admiral H. Curtiss 675a549628 GCMemcard: Use BigEndianValue for DEntry.m_first_block. 2018-12-09 22:28:56 +01:00
Admiral H. Curtiss 929fd2b41d GCMemcard: Use BigEndianValue for DEntry.m_animation_speed. 2018-12-09 22:28:56 +01:00
Admiral H. Curtiss c3e9f53480 GCMemcard: Use BigEndianValue for DEntry.m_icon_format. 2018-12-09 22:28:56 +01:00
Admiral H. Curtiss 65f6250faa GCMemcard: Use BigEndianValue for DEntry.m_image_offset. 2018-12-09 22:28:56 +01:00
Admiral H. Curtiss 1d25e249e8 GCMemcard: Use BigEndianValue for DEntry.m_modification_time. 2018-12-09 22:28:56 +01:00
Admiral H. Curtiss 2f1ff80dd6 GCMemcard: Use std::array for Header members instead of raw C arrays. 2018-12-09 22:28:56 +01:00
Admiral H. Curtiss 256d336219 GCMemcard: Use BigEndianValue for Header.m_encoding. 2018-12-09 22:28:55 +01:00
Admiral H. Curtiss 8eabcbf294 GCMemcard: Use BigEndianValue for Header.m_size_mb. 2018-12-09 22:28:55 +01:00
Admiral H. Curtiss bfbfcc72a2 GCMemcard: Use BigEndianValue for Header.m_device_id. 2018-12-09 22:28:55 +01:00
Admiral H. Curtiss b3ce882109 GCMemcard: Use BigEndianValue for Header.m_sram_language. 2018-12-09 22:28:55 +01:00
Admiral H. Curtiss 905a16e7e7 GCMemcard: Use BigEndianValue for Header.m_format_time. 2018-12-09 22:28:55 +01:00
Admiral H. Curtiss 9f03c2f358 GCMemcard: Rename BlockAlloc variables to match our naming conventions. 2018-12-09 22:28:55 +01:00
Admiral H. Curtiss 17208f4c89 GCMemcard: Rename Directory variables to match our naming conventions. 2018-12-09 22:28:55 +01:00
Admiral H. Curtiss 15f89d3e6f GCMemcard: Rename DEntry variables to match our naming conventions. 2018-12-09 22:28:55 +01:00
Admiral H. Curtiss c419dac1d8 GCMemcard: Rename Header variables to match our naming conventions. 2018-12-09 22:28:55 +01:00
Admiral H. Curtiss 4b1d891378 GCMemcard: Add a few static asserts for sizes of memory card structures. 2018-12-09 22:28:55 +01:00
Techjar 2e19efa8d5 NetPlay: Sync Wiimote extension
Small addition of NetPlay code in Core.cpp was needed to set the
extensions at the right time, as init would override them otherwise.
This solution is more elegant than modifying the user's INI files on
game start.
2018-12-05 16:36:44 -05:00
Techjar a2545a18b2 Qt/ControllersWindow: Fix Wiimote settings not being re-enabled after quitting NetPlay
We no longer allow accessing controller config while NetPlay is
running, so this check is no longer needed.
2018-12-05 16:12:12 -05:00
Léo Lam 2eb85c8fcf
Merge pull request #7594 from TryTwo/NestedDocks
Add nested docking to increase layout choices while debugging.
2018-12-05 17:14:46 +01:00
Pierre Bourdon 2c57e709d0
Merge pull request #7603 from jordan-woyak/fs-open-file-fix
Present an error message when failing to open a file that should exist.
2018-12-04 08:49:21 +01:00
Stenzek 7afd5cc2fb Use main buffers for utility draws 2018-12-04 17:37:25 +10:00
Stenzek 5ca18ff04e Vulkan: Restore viewport/scissor state on RestoreAPIState 2018-12-04 17:36:08 +10:00
Stenzek b409a87d1a D3D: Clamp viewport to current framebuffer dimensions, not target 2018-12-04 17:36:08 +10:00
Stenzek fa8262fa4a Vulkan: Don't panic on missing color/depth buffer in config 2018-12-04 17:36:08 +10:00
Stenzek 2644e920cc Renderer: Add backbuffer format to base class 2018-12-04 17:36:08 +10:00
Stenzek 1adcd47dcb Renderer: Add a base Initialize() method to match Shutdown() 2018-12-04 17:36:08 +10:00
Stenzek 38479dd783 RenderBase: Force a pipeline flush when drawing the XFB to the host
Since we use the common pipelines here and draw vertices if a batch is
currently being built by the vertex loader, we end up trampling over its
pointer, as we share the buffer with the loader, and it has not been
unmapped yet. Force a pipeline flush to avoid this.
2018-12-04 17:36:08 +10:00
booto 1ab390c15f DTK: Report position in increments of 0x8000 2018-12-04 00:16:46 -05:00
Jordan Woyak 122ce28786 Present an error message when failing to open a file that should exist.
This could happen with savestate loads, permission issues, or use by other processes.
Prior to this Dolphin assumed any existing file could be opened and crashes from invalid variant access.
Failing to open a file during savestate load will likely still crash but at least the user will know why.
2018-12-03 19:07:42 -06:00
weihuoya 3ab0f02cec vulkan: fx index buffer reserve size 2018-12-03 19:23:36 +08:00
Pierre Bourdon f5e9135912
Merge pull request #7598 from sepalani/wfsi
WFSI: Fix Dragon Quest X (all-in-one, v2, v3) installers
2018-12-03 02:39:47 +01:00
Léo Lam 00151fd913
Merge pull request #7601 from sepalani/html-pre
LogWidget: Preserve spaces and newlines
2018-12-02 19:38:54 +01:00
Sepalani d5692afd7d LogWidget: Preserve spaces and newlines 2018-12-02 19:12:12 +04:00
Sepalani 077597b028 VersionInfo: Replace IOS59 v7021 with v9249 2018-12-01 22:29:39 +04:00
Sepalani 5bb7cd251e WFSI: Handle PATCH_TYPE_2 properly in IOCTL_WFSI_FINALIZE_TITLE_INSTALL 2018-12-01 22:28:58 +04:00
Sepalani f351280061 WFSI: Implement IOCTL_WFSI_CHANGE_TITLE 2018-12-01 22:26:47 +04:00
Stenzek e3708ea8c3 Externals: Add MoltenVK binary, copy to package on macOS 2018-12-01 14:35:45 +10:00
Pierre Bourdon 754d934a18
Merge pull request #7596 from Techjar/netplay-fix-force-stop
NetPlay: Allow force stopping
2018-11-30 21:30:04 +01:00
Connor McLaughlin 6388992f62
Merge pull request #7039 from stenzek/moltenvk
Vulkan: macOS support via MoltenVK
2018-11-30 21:55:30 +10:00
Techjar 9c51439144 Qt/NetPlayDialog: Request game stop when core enters stopping state
This makes it possible to gracefully force stop emulation rather than
having to kill Dolphin completely when NetPlay deadlocks in the input
loop. Without a graceful stop, Wii saves do not get flushed to the main
NAND, and are left in limbo in the temporary NAND.
2018-11-30 03:40:23 -05:00
Techjar baecc500e8 Core: Notify state change callback about stopping state 2018-11-30 01:20:22 -05:00
Pierre Bourdon d9cacf6f5a
Merge pull request #7572 from delroth/analytics-quirks
Analytics: add simple framework for game quirks reporting
2018-11-30 05:22:45 +01:00
Pierre Bourdon 4d14d5ee9b
Merge pull request #7587 from Techjar/disable-controller-config-netplay
Qt: Disable controller configuration while NetPlay is running
2018-11-29 14:28:18 +01:00
Techjar 577f6a5fb1 Qt: Disable controller configuration while NetPlay is running
Doing pretty much anything in the controller config breaks NetPlay
(desync and/or deadlock), as saving the settings reconfigures
controller interfaces, which NetPlay doesn't expect.
2018-11-29 07:31:45 -05:00
Pierre Bourdon 09deed8aa4
Merge pull request #7586 from Techjar/controller-dialog-button-thing
Qt/ControllersWindow: Fix incorrect enabled states of configure buttons
2018-11-29 03:34:11 +01:00
TryTwo c18aa36eab Add nested docking to increase layout choices while debugging. 2018-11-27 11:14:46 -07:00
Techjar 9bb3c7d839 Qt/ControllersWindow: Fix incorrect enabled states of configure buttons
All configure buttons would be enabled, although no-op, upon
initialization of the dialog. Changing a setting to cause a save would
fix them.
2018-11-23 04:47:49 -05:00
Techjar 5c81285b91 NetPlay: Fix server peer initialization hang
The implementation of peer initialization would hang if the initial
packet was never received. This fixes that issue by deferring the
initialization to the packet receive loop.
2018-11-22 03:15:49 -05:00
Pierre Bourdon 8d20a173f0
Merge pull request #7579 from AdmiralCurtiss/next-free-block-fix
GCMemcard: Fix mixed memcard-based and bat-based indices in definition and usage of NextFreeBlock().
2018-11-22 06:54:52 +01:00
Jordan Woyak fae368d2ee
Fix spurious error logs for conversions of empty strings on Windows. 2018-11-22 06:50:11 +01:00
Pierre Bourdon 0c6d677233
Merge pull request #7582 from AdmiralCurtiss/memcard-delete-wrong-dir
GCMemcard: Fix incorrect directory block being accessed in RemoveFile().
2018-11-22 06:43:25 +01:00
Pierre Bourdon c9d5ac3e9a Updater/UI: ITaskbarlist3 handling improvements.
* Properly error-check the interface querying and instance creation.
* Call HrInit() as required when getting the instance.
2018-11-22 02:46:36 +01:00
Pierre Bourdon 1805f51d79
Merge pull request #7446 from Techjar/wii-save-full-sync
NetPlay: Add full Wii save sync
2018-11-21 00:22:50 +01:00
Admiral H. Curtiss 431e6c42e1 GCMemcard: Fix incorrect directory block being accessed in RemoveFile().
When deleting files, block index data was always fetched from the first copy of the directory listing rather than the currently active one.
2018-11-21 00:15:58 +01:00
Admiral H. Curtiss 353e289fbf GCMemcard: Fix mixed memcard-based and bat-based indices in definition and usage of NextFreeBlock(). 2018-11-19 20:40:18 +01:00
JosJuice 46fe0669a5 Minor fixes to netplay sync strings 2018-11-19 19:54:55 +01:00
Techjar b06b7e5686 NetPlay: Add full Wii save sync
This adds the ability to sync all Wii saves, instead of only the
selected game. Useful for cases like launching a game though GeckoOS.
2018-11-19 06:37:09 -05:00
Techjar f4eb4fab08 HW/WiiSave: Fix reversed condition in WriteFiles
This didn't make any sense, as it would only attempt to create the directory if it already existed, and would simply fail if it didn't exist.
2018-11-19 06:37:09 -05:00
Techjar 6730748309 NetPlay: Use chunked data transfer for save sync 2018-11-19 06:37:09 -05:00
Techjar d94922002b NetPlay: Implement chunked data transfer
This sends arbitrary packets in chunks to be reassembled at the other
end, allowing large data transfers to be speed-limited and interleaved
with other packets being sent. It also enables tracking the progress of
large data transfers.
2018-11-19 06:37:09 -05:00
Techjar 529796bd59 NetPlay: Remove PadMapping type
Its usage was inconsistent, confusing, and buggy, so I opted to just
remove it entirely. It has been replaced with PadIndex for the
appropriate instances (mainly networking), and inappropriate usages
(where it was really just a player ID) have been replaced with the
PlayerId type. The definition of "no mapping" has been changed from -1
to 0 to match the defintion of "no player", as -1 (255 unsigned) is
actually a valid player ID.

The bugs never manifested because it only occurs with a full lobby of
255 players, at which point the last player's ID collides with the "no
mapping" definition and some undefined behavior occurs. Nevertheless, I
thought it best to fix it anyways as the usage of PadMapping was
confusing.
2018-11-19 05:45:32 -05:00
Pierre Bourdon e6b2758ab4
Merge pull request #7477 from Zexaron/ext-minizip
Externals: Add a stripped down version of minizip
2018-11-17 22:23:02 +01:00
Léo Lam c56516502d
Merge pull request #7440 from JosJuice/wii-menu-1.0-region
Never return Unknown from SConfig::GetFallbackRegion
2018-11-17 21:18:38 +01:00
Pierre Bourdon 08f9df2461
Merge pull request #7574 from spycrab/updater_pb
Updater: Add total progressbar
2018-11-17 16:42:32 +01:00
spycrab 3cfa255c5a Updater: Add total progressbar 2018-11-17 16:37:53 +01:00
Techjar 94d7e7d78a Qt/NetPlayDialog: Add external IP to interface combo box
The interface address isn't particularly useful in most circumstances
(playing over internet), and we have a way to get the external IP now,
so displaying it in the dialog is useful.
2018-11-15 03:29:28 -05:00
Pierre Bourdon ef562ec2f1 Analytics: add simple framework for game quirks reporting
And use it for reporting games that rely on ICache emulation to some
degree. We know of a few but it would be interesting to get a more
exhaustive list from crowdsourcing.
2018-11-15 03:32:49 +01:00
Pierre Bourdon 6b7a1ca6d1
Merge pull request #7535 from UnclePunch/synccodes
Netplay: Sync AR and gecko codes with clients
2018-11-13 22:39:25 +01:00
Pierre Bourdon 41333fa971
Merge pull request #7564 from Techjar/netplay-sync-wii-shutdown
NetPlay: Sync power button event
2018-11-13 22:33:59 +01:00
Techjar ef89e4e70c NetPlay: Sync power button event
This fixes the deadlock on shutdown when Wii Remotes are in use.
2018-11-12 22:32:18 -05:00
Stenzek 502c4c0e87 TextureCache: Recompute overlapping XFB copy hashes after copying to RAM 2018-11-13 12:48:27 +10:00
Techjar caf2fc3c3e NetPlay: Sync Defer EFB Copies setting 2018-11-12 20:45:12 -05:00
Pierre Bourdon 97e3200f57
Merge pull request #7519 from stenzek/controller-window
Core: Switch controller interface to render surface on booting
2018-11-12 17:26:03 +01:00
Stenzek a0653a1a34 Vulkan: Fix incorrect fence being assigned to staging texture 2018-11-12 01:02:32 +10:00
Pierre Bourdon a9f7df5b15 SystemTimers: fix a 1-in-1000 crash happening in throttler performance 2018-11-10 20:50:17 +01:00
MerryMage df08a77812 Jit_LoadStore: Ra needs to be ReadWrite when writeback is required
This was an erronous change in 534db3b, Ra was previously loaded but was changed to not being loaded.
Why is loading necessary? Loading is necessary because when a memory exception occurs, the current
register values are flushed. This occurs before a new value is loaded into Ra, so the previous value
is required in Ra.
2018-11-10 10:57:15 +00:00
JosJuice 0e1cca54da
Merge pull request #7555 from Techjar/config-delcaration-unused
Core/Config: Remove unused NETPLAY_SELECTED_HOST_GAME declaration
2018-11-09 08:07:21 +01:00
Pierre Bourdon 61b9ef33ab
Merge pull request #7492 from MerryMage/regcache2
JitRegCache: Refactor register cache
2018-11-09 04:45:47 +01:00
Techjar 4fd2a25253 Core/Config: Remove unused NETPLAY_SELECTED_HOST_GAME declaration 2018-11-08 22:39:42 -05:00
Pierre Bourdon 162e34ad22
Merge pull request #7534 from Techjar/fix-netplay-gamelist-saving
NetPlay: Fix saving host game selection
2018-11-09 04:28:55 +01:00
Pierre Bourdon 541c5ee996
Merge pull request #7550 from JosJuice/widescreen-hack-suggested-ratio
Fix the widescreen hack for Wii games with 4:3 forced in game INI
2018-11-09 04:28:31 +01:00
Pierre Bourdon e903d346ea
Merge pull request #7552 from stenzek/texture-cache-leak
TextureCache: Fix leaking TCacheEntry instances
2018-11-09 04:27:14 +01:00
spycrab 1595a9bdcd Updater: Show progress in taskbar 2018-11-08 11:54:56 +01:00
Stenzek 78056686fd TextureCache: Fix leaking TCacheEntry instances 2018-11-08 11:52:17 +10:00
JosJuice a42432cae4 RenderBase: Set m_aspect_wide on start
It doesn't feel great to let the value from a previous emulation session
linger around considering that the GC aspect ratio heuristic can use
the previous value of m_aspect_wide when calculating m_aspect_wide.
2018-11-07 19:01:45 +01:00
JosJuice b93b7ec419 Fix the widescreen hack for Wii games with 4:3 forced in game INI 2018-11-07 19:00:24 +01:00
Pierre Bourdon 16a618f413
Merge pull request #7548 from stenzek/graphics-window-crash
OGL: Fix crash when opening graphics window on another backend
2018-11-07 17:45:52 +01:00
Pierre Bourdon a77882468b
Merge pull request #7544 from DXGLdotinfo/master
Add supportedOS manifests for Windows 7, 8, 8.1, and 10 to DolphinQt …
2018-11-07 15:35:56 +01:00
Stenzek 0c0d66809d PixelShaderGen: Split bbox into seperate variables
The Metal shader compiler fails to compile the atomic instructions
when operating on individual components of a vector. Spltting it
into four variables shouldn't make any difference for other
platforms, as they are accessed independently.
2018-11-07 05:41:09 -08:00
Stenzek 673f1963a0 Vulkan: Support macOS via MoltenVK
The path to the MoltenVK library can be specified by the
LIBMOLTENVK_PATH environment variable, otherwise it assumes it is
located in the application bundle's Contents/MacOS directory.
2018-11-07 05:41:09 -08:00
Stenzek c7a2b1572b CMake: Build Vulkan backend on macOS 2018-11-07 05:12:20 -08:00
Stenzek 041b977523 Common: Use GCD semaphores on macOS
Unnamed semaphores are not supported.
2018-11-07 05:12:20 -08:00
Stenzek a1b9a9f519 DolphinQt: Add backend multithreading to graphics config 2018-11-07 05:12:20 -08:00
Stenzek 487ea5ab36 VideoBackend: Add a virtual PrepareWindow function
Executes backend-specific commands on the main thread.
2018-11-07 05:12:20 -08:00
Pierre Bourdon c52bdba28a
Merge pull request #7542 from Tilka/fifo_analyzer
FIFOAnalyzer: don't use misleading format strings
2018-11-07 13:26:01 +01:00
Stenzek 7efdd1070b OGL: Fix crash when opening graphics window on another backend 2018-11-07 21:20:12 +10:00
Techjar dfa4395ba0 Core/Config: Fix memcard path not being saved 2018-11-07 04:29:44 -05:00
Stenzek a45f977d26 Analytics: Add deferred EFB copies setting to graphics settings 2018-11-07 16:25:01 +10:00
Stenzek 66b6e72c5e Vulkan: Submit fewer command buffers in deferred EFB copies mode 2018-11-07 16:25:01 +10:00
Stenzek 8e2c063d62 TextureCache: Implement deferred/batched EFB copies 2018-11-07 16:25:01 +10:00
William 6d437b282a Add supportedOS manifests for Windows 7, 8, 8.1, and 10 to DolphinQt and Updater. Enables high contrast themes on Windows 8+. 2018-11-03 22:33:55 -04:00
Tillmann Karras 6714159660 FIFOAnalyzer: don't use misleading format strings 2018-11-03 14:37:22 +00:00
JosJuice 20b8c24847 Fix first DTK track not playing after booting with IPL
DVDLowAudioBufferConfig doesn't start a DTK stream, it just tells the
drive that the game is allowed to use DTK. At least if I'm not mistaken.
2018-11-01 21:06:11 +01:00
Vin Bertinelli 469f29350f Netplay: Sync codes
Adds a tickbox to the server's window to syncronize codes. Codes
are temporarily sent to each client and are used for the duration of the
session.

Saves the "sync codes" tickbox as per PR Netplay: Properly save hosting
settings #7483
2018-10-29 23:00:51 +01:00
Techjar 203ecb534d NetPlay: Fix saving host game selection 2018-10-29 17:01:30 -04:00
Pierre Bourdon 6bb31fc94c DolphinQt: tell analytics to reload settings on change 2018-10-29 05:07:47 +01:00
Stenzek 6392be61eb Host: Also call ControllerInterface::ChangeWindow when window changes
This should prevent us from trying to poll against destroyed native
windows.
2018-10-29 11:46:06 +10:00
Stenzek cb6ba59a44 Host: Don't call ChangeSurface when handle hasn't changed
This was causing a deadlock when switching to fullscreen in
render-to-main-window mode.
2018-10-29 11:46:06 +10:00
Stenzek 52828901ef Core: Switch controller interface to render widget on booting
Previously, the Qt frontend would initialize the controller
interface on starting, resulting in the cursor position being
relative to the main window, instead of the render window.
2018-10-29 11:46:06 +10:00
Stenzek a7f334dc2a ControllerInterface: Don't crash on non-X11 QPA 2018-10-29 11:46:06 +10:00
Pierre Bourdon 9095233d21
Merge pull request #7483 from Zexaron/netplay_save-host-settings
Netplay: Properly save hosting settings
2018-10-29 01:44:41 +01:00
Pierre Bourdon f1413dbbf6
Merge pull request #7501 from Techjar/class-memaccess-cleanup
VideoCommon: Clean up class-memaccess warnings
2018-10-28 23:59:51 +01:00
Pierre Bourdon 7094f225d4
Merge pull request #7515 from JosJuice/wcsftime
Use wcsftime instead of strftime on Windows to fix encoding errors
2018-10-28 23:58:17 +01:00
Pierre Bourdon 53a45e5c28
Merge pull request #7445 from Techjar/improve-sfmlhelper
Improve SFMLHelper
2018-10-28 23:53:59 +01:00
Pierre Bourdon 98987beb73
Merge pull request #7526 from Tilka/mo_logging
DolphinQt: reduce warnings about MO files
2018-10-28 23:52:22 +01:00
Pierre Bourdon 2071dea9b7
Merge pull request #7497 from stenzek/lazy-initialize
Qt/MainWindow: Lazy initialize child windows
2018-10-28 23:51:23 +01:00
MerryMage 342067abfa JitRegCache: Remove old interface 2018-10-28 17:57:46 +00:00
MerryMage 08c41090b2 JitRegCache: Add RegistersInUse 2018-10-28 17:57:46 +00:00
MerryMage 096392f295 JitRegCache: Add PreloadRegisters function 2018-10-28 17:57:46 +00:00
MerryMage 9f683f9bb1 BitSet: Add << operator 2018-10-28 17:57:46 +00:00
MerryMage e699b6b283 Jit: Remove OpArg variant of ComputeRC 2018-10-28 17:57:46 +00:00
MerryMage 7d7316c90f Jit_SystemRegisters: mffsx 2018-10-28 17:57:46 +00:00
MerryMage 62484141f2 Jit_SystemRegisters: mtfsfx 2018-10-28 17:57:46 +00:00
MerryMage 192f8ba6f1 Jit_Paired: ps_res 2018-10-28 17:57:46 +00:00
MerryMage 66d9349643 Jit_Paired: ps_rsqrte 2018-10-28 17:57:45 +00:00
MerryMage 3fc3a55a9a Jit_Paired: mergeXX 2018-10-28 17:57:45 +00:00
MerryMage cf5823c146 Jit_Paired: ps_muls 2018-10-28 17:57:45 +00:00
MerryMage 1550729688 Jit_Paired: ps_sum 2018-10-28 17:57:45 +00:00
MerryMage be8fec6244 Jit_Paired: ps_mr 2018-10-28 17:57:45 +00:00
MerryMage 96b86a9bc4 Jit_FloatingPoint: HandleNaNs 2018-10-28 17:57:45 +00:00
MerryMage 0a96da578e Jit_FloatingPoint: fresx 2018-10-28 17:57:45 +00:00
MerryMage e812a62879 Jit_FloatingPoint: frsqrtex 2018-10-28 17:57:45 +00:00
MerryMage 68bbd56c01 Jit_FloatingPoint: frspx 2018-10-28 17:57:45 +00:00
MerryMage cc77e2f3ef Jit_FloatingPoint: fctiwx 2018-10-28 17:57:45 +00:00
MerryMage 457327cbc4 Jit_FloatingPoint: FloatCompare 2018-10-28 17:57:45 +00:00
MerryMage 55c21a15a2 Jit_FloatingPoint: fmrx 2018-10-28 17:57:45 +00:00
MerryMage fecbf091e5 Jit_FloatingPoint: fselx 2018-10-28 17:57:45 +00:00
MerryMage d62ca40496 Jit_FloatingPoint: fsign 2018-10-28 17:57:45 +00:00
MerryMage 537eeb7ebf Jit_FloatingPoint: fmaddXX 2018-10-28 17:57:45 +00:00
MerryMage a26c9c4b74 Jit_FloatingPoint: fp_arith 2018-10-28 17:57:45 +00:00
MerryMage 2337e089bf Jit_SystemRegisters: mtspr 2018-10-28 17:57:45 +00:00
MerryMage d87436c57d Jit_LoadStorePaired: psq_lXX 2018-10-28 17:57:45 +00:00
MerryMage 0b29b5cb83 Jit_LoadStorePaired: psq_stXX 2018-10-28 17:57:45 +00:00
MerryMage 459f977483 Jit_LoadStoreFloating: stfiwx 2018-10-28 17:57:45 +00:00
MerryMage dcfe955087 Jit_LoadStoreFloating: stfXXX 2018-10-28 17:57:45 +00:00
MerryMage f564da7233 Jit_LoadStoreFloating: lfXXX 2018-10-28 17:57:45 +00:00
MerryMage 36790ad3ad Jit_SystemRegisters: mtcrf 2018-10-28 17:57:45 +00:00
MerryMage d8b2bf785a Jit_SystemRegisters: mfcr 2018-10-28 17:57:45 +00:00
MerryMage 6ff8f9e991 Jit_SystemRegisters: mfmsr 2018-10-28 17:57:45 +00:00
MerryMage 5fa6df8c1e Jit_SystemRegisters: mtmsr 2018-10-28 17:57:45 +00:00
MerryMage 1d867493d9 Jit_SystemRegisters: mfspr 2018-10-28 17:57:45 +00:00
MerryMage 9438ea0ef5 Jit_LoadStore: stmw 2018-10-28 17:57:45 +00:00
MerryMage 98cf0b3286 Jit_LoadStore: lmw 2018-10-28 17:57:45 +00:00
MerryMage c6b9712ac4 Jit_LoadStore: stXx 2018-10-28 17:57:44 +00:00
MerryMage 90cef22d57 Jit_LoadStore: stX 2018-10-28 17:57:44 +00:00
MerryMage 4a2efc8f5e Jit_LoadStore: dcbz 2018-10-28 17:57:44 +00:00
MerryMage 0e501e5c36 Jit_LoadStore: dcbx 2018-10-28 17:57:44 +00:00
MerryMage 534db3b2ed Jit_LoadStore: lXXx 2018-10-28 17:57:44 +00:00
MerryMage 00d65f7a69 Jit: memcheck 2018-10-28 17:57:44 +00:00
MerryMage c896d41c37 DoJit 2018-10-28 17:57:44 +00:00
MerryMage 4443b36326 Jit_Branch: bclrx 2018-10-28 17:57:44 +00:00
MerryMage 0cd85bbce7 Jit_Branch: bcctrx 2018-10-28 17:57:44 +00:00
MerryMage 453417ad8c Jit_Branch: bcx 2018-10-28 17:57:44 +00:00
MerryMage 256e234949 Jit_Integer: DoMergedBranchCondition 2018-10-28 17:57:44 +00:00
MerryMage 0d3393b306 Jit_Integer: rlwimix 2018-10-28 17:57:44 +00:00
MerryMage b866b5bdd9 Jit_Integer: reg_imm 2018-10-28 17:57:44 +00:00
MerryMage ace2ed27ac Jit_Integer: DoMergedBranchImmediate 2018-10-28 17:57:44 +00:00
MerryMage 88e5d0d8b1 Jit_Integer: cmpXX 2018-10-28 17:57:44 +00:00
MerryMage b256286690 Jit_Integer: boolX 2018-10-28 17:57:44 +00:00
MerryMage b7a4296bec Jit_Integer: extsXx 2018-10-28 17:57:44 +00:00
MerryMage c380764ed0 Jit_Integer: twX 2018-10-28 17:57:44 +00:00
MerryMage 5621907283 Jit_Integer: cntlzwx 2018-10-28 17:57:44 +00:00
MerryMage 31bd9b5cd0 Jit_Integer: srawix 2018-10-28 17:57:44 +00:00
MerryMage 817fddf734 Jit_Integer: srawx 2018-10-28 17:57:44 +00:00
MerryMage 32572dd639 Jit_Integer: slwx 2018-10-28 17:57:44 +00:00
MerryMage 22600b33ee Jit_Integer: srwx 2018-10-28 17:57:44 +00:00
MerryMage 4a97f31aa2 Jit_Integer: negx 2018-10-28 17:57:44 +00:00
MerryMage 42614ede16 Jit_Integer: rlwnmx 2018-10-28 17:57:44 +00:00
MerryMage d4e2acc9cd Jit_Integer: rlwinmx 2018-10-28 17:57:44 +00:00
MerryMage bde5df03a3 Jit_Integer: arithcx 2018-10-28 17:57:44 +00:00
MerryMage 6ce718b920 Jit_Integer: arithXex 2018-10-28 17:57:44 +00:00
MerryMage 9bf75a0f31 Jit_Integer: addx 2018-10-28 17:57:44 +00:00
MerryMage 50e7b97406 Jit_Integer: divwx 2018-10-28 17:57:44 +00:00
MerryMage f945457915 Jit_Integer: divwux 2018-10-28 17:57:44 +00:00
MerryMage 2652d4dfdb Jit_Integer: mulhwXx 2018-10-28 17:57:44 +00:00
MerryMage 24aadd933e Jit_Integer: mullwx 2018-10-28 17:57:44 +00:00
MerryMage 02deaab6ee Jit_Integer: mulli 2018-10-28 17:57:44 +00:00
MerryMage 497ac5789d Jit_Integer: subfx 2018-10-28 17:57:44 +00:00
MerryMage 64c29ab942 Jit_Integer: Port subfic to new register cache interface 2018-10-28 17:57:44 +00:00
MerryMage 33812319ac Jit: Add preg_t variant of ComputeRC 2018-10-28 17:57:44 +00:00
MerryMage 5e46c16e4f JitRegCache: Add IsZero to RCOpArg 2018-10-28 17:57:43 +00:00
MerryMage 2e955012b2 JitRegCache: Add BindOrImm 2018-10-28 17:57:43 +00:00
MerryMage 590ec866b0 JitRegCache: Add revertable binds 2018-10-28 17:57:43 +00:00
MerryMage 16f8b7413d JitRegCache: IsAllUnlocked 2018-10-28 17:57:43 +00:00
MerryMage 6c61d9a426 JitRegCache: RCForkGuard 2018-10-28 17:57:43 +00:00
MerryMage 367a0bb672 JitRegCache: Add RCOpArg::ExtractWithByteOffset 2018-10-28 17:57:43 +00:00
MerryMage ae1bd7a6b0 JitRegCache: New interface 2018-10-28 17:57:43 +00:00
MerryMage 6fef683e14 JitRegCache: Move files to subdirectory 2018-10-28 17:57:43 +00:00
MerryMage 448fc89e4c JitRegCache: Count locks/unlocks 2018-10-28 17:57:43 +00:00
MerryMage 2dce7e6e21 Common: Add variant utilities 2018-10-28 17:57:43 +00:00
Pierre Bourdon 98b0efb6de
Merge pull request #7499 from JosJuice/purge-game-list-cache
DolphinQt: Implement "Purge Game List Cache"
2018-10-28 17:00:04 +01:00
Tillmann Karras 13930f565a DolphinQt: reduce warnings about MO files 2018-10-28 11:45:59 +00:00
JosJuice 8baafcc523 Accurate region detection for NAND titles 2018-10-28 11:27:08 +01:00
Stenzek 7c4607a05a Vulkan: Add missing increment of draw call count 2018-10-28 11:32:26 +10:00
Pierre Bourdon 756a2fe14d
Merge pull request #7517 from delroth/analytics-perf
Report performance information through our analytics subsystem
2018-10-28 00:43:12 +02:00
Pierre Bourdon 83c3370c2a RenderBase: send performance sample at every end of frame
Not the best integration point, but couldn't think of something better.
This implementation has the benefit to be super simple.
2018-10-27 17:39:54 +02:00
Pierre Bourdon 6a891ea37c Core/Analytics: add support for performance sampling
Samples are pushed to the analytics module every frame but only sent
once every ~15min. We send data for 100 frames at a time.
2018-10-27 17:39:53 +02:00
Pierre Bourdon d98c0da41b Common/Analytics: add basic support for vector serialization
Only supports u32 for now since that's the only thing we need.
2018-10-27 17:16:58 +02:00
Pierre Bourdon 64e04eb38c SystemTimers: export performance index from the throttler callback 2018-10-27 15:14:59 +02:00
JosJuice 5718b870d1 Use wcsftime instead of strftime on Windows to fix encoding errors
Reported by https://forums.dolphin-emu.org/Thread-odd-codes-appear-in-save-load-state-when-chinese-language-is-used
2018-10-26 14:26:21 +02:00
JosJuice 34edcdd454 Never return Unknown from SConfig::GetFallbackRegion
This happens if Wii Menu 1.0 is installed.

Reported by https://forums.dolphin-emu.org/Thread-default-case-should-not-be-reached
2018-10-25 17:54:13 +02:00
JosJuice 8bbec31295 DolphinQt: Implement "Purge Game List Cache"
This is a missing feature from DolphinWX.
2018-10-25 08:29:54 +02:00
Mat M 74c49c961e
Merge pull request #7504 from JosJuice/game-id-partition-none
Fix issue 11422 (inconsistent game ID for some hacked games)
2018-10-24 21:15:10 -04:00
Pierre Bourdon eadb4a66a5 ThrottleCallback: use microseconds to represent realtime
Using milliseconds doesn't provide a lot of granularity, and we can use
all we can get for performance analysis.
2018-10-25 02:27:49 +02:00
Stenzek 8c84e27155 Core: Fix display being passed as surface to ControllerInterface 2018-10-24 15:24:10 +10:00
Stenzek 1e8cdc02d1 CMake: Fix DolphinNoGUI build 2018-10-24 14:50:23 +10:00
Stenzek 2c6d96433c GLContext: Try GL versions 3.2-4.6 when getting a context
GLX previously was only creating a 4.0 context.
2018-10-20 21:11:34 +10:00
Stenzek c95802afeb CMake: Make X11 and EGL optional 2018-10-20 21:11:34 +10:00
Stenzek 0559311f92 GLContext: Runtime selection of EGL/GLX on Linux 2018-10-20 21:11:34 +10:00
Stenzek 025e909773 GLContext: Use destructor instead of Shutdown() to cleanup
Also uses the Initialize() method to make the context current.
2018-10-20 21:11:34 +10:00
Stenzek 4b8d1c2b42 GLContext: Combine shared context initialization and creation 2018-10-20 21:11:34 +10:00
Stenzek dcdd02d646 GLContext: Remove global context pointer 2018-10-20 21:11:34 +10:00
Stenzek eb284b5d66 VideoBackends: Pass window system info from host on creation 2018-10-20 21:11:34 +10:00
Stenzek 9c57a98723 GLContext: Use host connection
This also removes the need for a sleeping event thread.
2018-10-20 21:11:34 +10:00
Stenzek 1d827a5223 Renderer: Pull dimensions from GLInterface/Swapchain 2018-10-20 21:11:34 +10:00
Stenzek a3961750a7 Drop Host_GetRenderSurface and pass display to backend 2018-10-20 21:11:34 +10:00
Stenzek 134d967be2 Refactoring and cleanup of GLInterface (now GLContext) 2018-10-20 21:11:34 +10:00
Stenzek 74b82bab3b GLInterface: Drop Haiku support 2018-10-20 21:11:33 +10:00
Tillmann Karras 97cc9894e4 Update to Visual Studio's default Windows SDK 2018-10-20 00:53:08 +01:00
Mat M 4d62037f88
Merge pull request #7505 from JosJuice/korean-country-code
DiscIO: Restore the Korean case in CountryCodeToCountry
2018-10-19 17:28:50 -04:00
JosJuice 338f3467e5 DiscIO: Restore the Korean case in CountryCodeToCountry
I must've goofed or something last time I changed this.
2018-10-19 18:45:59 +02:00
JosJuice 03d401127e Fix issue 11422 (inconsistent game ID for some hacked games)
Starting with PR 7411, the rest of Dolphin reads the game ID from
PARTITION_NONE, but SetRunningGameMetadata was still reading from
the game partition. https://bugs.dolphin-emu.org/issues/11422
2018-10-16 21:41:28 +02:00
Tilka cb576bf382
Merge pull request #7503 from MerryMage/signed_comparison
BTReal: Correct comparison of integers of different signs
2018-10-15 19:36:45 +01:00
MerryMage 688e8db904 BTReal: Correct comparison of integers of different signs 2018-10-15 19:30:58 +01:00
Anthony cffca7cbec
Merge pull request #7502 from JosJuice/functions-signature
Improve the "functions signature" string
2018-10-15 11:01:36 -07:00
JosJuice 4a07b9a0e1 Improve the "functions signature" string 2018-10-15 18:31:02 +02:00
Techjar 8560eecd49 VideoCommon: Clean up class-memaccess warnings 2018-10-14 23:05:47 -04:00
Z1ni d7640f5929 Qt/GameList: Cancel ISO compression when the user cancels the save dialog 2018-10-14 21:04:43 +03:00
Stenzek ea77899ddd Qt/MainWindow: Maintain pointer to hotkey window
Prevents multiple hotkey windows from being opened.
2018-10-14 22:24:31 +10:00
Stenzek 211a9bf6d2 Qt/MainWindow: Lazy initialize child windows 2018-10-14 21:46:59 +10:00
Tilka b5d855caf7
Merge pull request #7496 from stenzek/null-shader-cache
ShaderCache: Don't create or load shader cache with Null backend
2018-10-14 12:30:32 +01:00
Stenzek e3f475b30e NullBackend: Initialize vtx_decl in VertexFormat
This field was previously left uninitialized, which resulted in corrupted
UID caches being created.
2018-10-14 21:24:09 +10:00
Tilka 660fb3fca0
Merge pull request #7412 from AdmiralCurtiss/xfb-stitch-in-order
Stitch together overlapping XFB regions in order of XFB copy creation.
2018-10-14 12:00:41 +01:00
Stenzek c2fab7f016 ShaderCache: Don't create or load shader cache with Null backend 2018-10-14 20:03:57 +10:00
Tilka 64515d0840
Merge pull request #7216 from leoetlino/test
Fix BT passthrough by sending larger packets
2018-10-14 10:22:51 +01:00
Tilka 8d1e996f39
Merge pull request #7495 from JosJuice/wii-menu-1.0-region-3
Show 1.0U instead of 1.0 for Wii Menu 1.0
2018-10-14 09:49:26 +01:00
JosJuice 34c05e17dc Show 1.0U instead of 1.0 for Wii Menu 1.0
As suggested by https://github.com/dolphin-emu/dolphin/pull/7487#issuecomment-429528407
2018-10-14 09:47:47 +02:00
Tilka e18fbb9bd3
Merge pull request #7449 from amaiorano/fix-extensions-combo-update-on-reset-defaults
Fix extensions combo update on reset defaults
2018-10-14 02:22:54 +01:00
Tilka 9a1f259626
Merge pull request #7486 from amaiorano/fix-infinite-polling-for-usb-devices
Fix infinite polling for usb devices after the "add to whitelist" dia…
2018-10-14 01:13:35 +01:00
Tilka 1abb27909d
Merge pull request #7480 from sp00nd/master
Change gecko sorting back to manual
2018-10-14 01:07:51 +01:00
Tilka 2d0e217715
Merge pull request #7485 from amaiorano/double-click-to-add-usb-whitelist-device
Make double click on selected usb whitelist device add it
2018-10-14 01:02:50 +01:00
MerryMage 93ec976975 Jit_SystemRegisters: Correct behaviour for mtspr SPR_HID0 (Redux)
* BTR modifies its argument.
* Do not fallthrough.
2018-10-13 19:20:08 +01:00
Pierre Bourdon 2508f6c621
Revert "Jit_SystemRegisters: Correct behaviour for mtspr SPR_HID0" 2018-10-13 20:04:30 +02:00
Pierre Bourdon 2bdee9b80b
Merge pull request #7455 from spycrab/qt_tags
Qt/GameList: Implement tag system
2018-10-13 19:58:32 +02:00
MerryMage e7a65c31a8 Jit_SystemRegisters: Correct behaviour for mtspr SPR_HID0
BTR modifies its argument
2018-10-13 15:59:40 +01:00
Zexaron 550aa93ed0 NetPlay: Properly save Hosting GUI settings 2018-10-13 10:35:42 +02:00
Antonio Maiorano 3dec84a91b Fix infinite polling for usb devices after the "add to whitelist" dialog has been opened once
Problem is that USBDeviceAddToWhitelistDialog starts a timer once created to poll for devices every second. In Qt, closing a heap-allocated dialog doesn't delete it, so it keeps on polling. This fix is to allocate dialog on the stack, then use "exec" to run it modally without returning. Once closed, the stack instance will get destroyed, thus killing the timer.
2018-10-12 21:34:05 -04:00
MerryMage d60345f15e Jit_FloatingPoint: Make fp_tri_op a local lambda 2018-10-12 20:46:02 +01:00
Tilka 94f07e7fa9
Merge pull request #7472 from Z1ni/usb-dev-dialog-close
Qt/Settings: Add Cancel button to USB passthrough device dialog
2018-10-12 20:43:09 +01:00
Mat M bbb08eec98
Merge pull request #7487 from JosJuice/wii-menu-1.0-region-2
Treat Wii Menu 1.0 as NTSC-U
2018-10-12 14:45:17 -04:00
JosJuice 7643d6d2f9 Treat Wii Menu 1.0 as NTSC-U
See the comments of https://github.com/dolphin-emu/dolphin/pull/7440.
2018-10-12 17:13:40 +02:00
Mat M 57529bc455
Merge pull request #7438 from RolandMunsil/master
Fix issue where breakpoint type wasn't correct in debugger memory view.
2018-10-12 10:30:31 -04:00
Mat M ecd4897d43
Merge pull request #7437 from stenzek/graphics-options-race
Fix race condition caused by opening graphics options while running
2018-10-12 10:29:28 -04:00
Mat M b3cd6158fc
Merge pull request #7471 from JosJuice/country-region-switch
DiscIO: Improve RegionSwitch/CountrySwitch
2018-10-12 10:25:45 -04:00
JosJuice f834ef1dfe DiscIO: Rename RegionSwitch/CountrySwitch
Callers don't need to know that these functions are implemented
with a switch statement.
2018-10-12 12:32:22 +02:00
JosJuice 7fd1784b9a DiscIO: Add more RegionSwitch/CountrySwitch comments 2018-10-12 12:32:22 +02:00
JosJuice 7607dc3573 DiscIO: Fix CountrySwitch's 'M' comment (and clarify other VC comments) 2018-10-12 12:31:52 +02:00
Tilka f5bfcdda5a
Merge pull request #7473 from aldelaro5/fix-signature-export
Qt/debugger: restore previously lost symbols and signature features
2018-10-11 13:03:37 +01:00
Tilka b35e0fd456
Merge pull request #7451 from stenzek/gles-blit-scissor
OGL: Disable scissor test when calling glBlitFramebuffer()
2018-10-11 13:00:17 +01:00
Antonio Maiorano 3a8493cc59 Make double click on selected usb whitelist device add it 2018-10-09 20:34:32 -04:00
Tillmann Karras db54b903ef Zero-initialize CPU state and register view 2018-10-10 00:04:02 +01:00
Tillmann Karras dfe8305ae7 PowerPC: fix a cast warning 2018-10-10 00:03:54 +01:00
sp00nd 6cd53bf92d
Change gecko sorting back to manual
Gecko codes are a core foundation of most netplay sessions and most general modding cases. It has gone so far as to now have an ini for almost every game.

After the massive UI overhaul, the gecko code sorting defaults to Alphabetical with no option to change it. This removes the possibility for netplay builds to have important and necessary codes at the top for easy selecting, and removes the ability to sort massive code lists in categories.

This will also make the sorting consistent with AR codes, which are sorted manually.
2018-10-09 17:46:11 -05:00
Tilka 7cfba7397c
Merge pull request #7475 from aldelaro5/symbols-search-case-insensitive
Qt/debugger: make the symbols search case insensitive
2018-10-09 21:18:06 +01:00
Z1ni b27c688fdf Qt/Settings: Add Cancel button to USB passthrough device dialog 2018-10-09 15:28:40 +03:00
Pierre Bourdon 8e26d33133 Externals: Add a stripped down version of minizip. 2018-10-09 14:27:53 +02:00
Stenzek 2e905455b1 OGL: Disable scissor test when calling glBlitFramebuffer()
glBlitFramebuffer() does not bypass the scissor test, which meant that
part of texture copies (e.g. XFB) could have been clipped when running
under OpenGL ES, as glCopyImageSubData() is not supported.
2018-10-09 22:00:40 +10:00
Tilka 480972612c
Merge pull request #7474 from aldelaro5/fix-pc-icons-swap
Qt/debugger: reorder the PC toolbar icons to their correct buttons
2018-10-09 09:02:10 +01:00
Tilka 5b8e1e61e8
Merge pull request #7470 from Tilka/fifoplayer
FifoPlayer: reduce XF_REGS_SIZE to what we know
2018-10-09 08:56:48 +01:00
aldelaro5 68aff9c023
Qt/debugger: make the symbols search case insensitive 2018-10-08 21:17:33 -04:00
aldelaro5 9fd7da59b1
Qt/debugger: reorder the PC toolbar icons to their correct buttons 2018-10-08 21:10:18 -04:00
aldelaro5 3921d8a8be
Qt/debugger: restore previous symbols and signature features
They were mysteriously lost after the Qt migration.
2018-10-08 20:59:55 -04:00
Tillmann Karras 56fdcf5f00 VideoCommon: remove unnecessary floor()
floatindex is clamped to the range [0, 9]. For non-negative numbers
floor() is equivalent to trunc(). Truncation happens implicitly when
converting to uint, so the floor() is unnecessary.
2018-10-09 00:31:43 +01:00
Tilka 31594a8138
Merge pull request #7462 from aldelaro5/fix-signature-export
Qt/debugger: Accept empty prefix input
2018-10-09 00:30:19 +01:00
Tillmann Karras 79051a28c4 evdev: simplify code
No need to check write access if we call open() right after which checks
that anyway. Also only get the device name once.
2018-10-08 19:51:29 +01:00
JosJuice cab5e52d15 DiscIO: Fix the 'W', 'X', 'Y' and 'Z' country codes
These country codes have the unfortunate property that they are used
by Wii disc games in two different regions. We already correct for this
in VolumeGC::GetCountry and VolumeWii::GetCountry, so this commit
shouldn't really have any effect on how the game list behaves,
but it will be useful if we in the future would want to call
CountrySwitch directly without having extra code in the caller for
handling region weirdness.
2018-10-08 13:57:31 +02:00
JosJuice 504024ab46 DiscIO: Add the missing 'V' country code 2018-10-08 13:57:31 +02:00
JosJuice 57d05293fd DiscIO: Move the Korean GC mess out of VolumeGC 2018-10-08 13:56:13 +02:00
Tillmann Karras 9c7136453d FifoPlayer: reduce XF_REGS_SIZE to what we know
This avoids out-of-bounds warnings when replaying FIFO captures.

The value of XF_REGS_SIZE is written into the DFF header and we only
read the min of XF_REGS_SIZE and the header value, so this change is
backward compatible and doesn't break forward compatibility for old
Dolphin versions either.
2018-10-08 06:54:32 +01:00
Tillmann Karras b37886580b GekkoDisassembler: fix mtfsf yet again 2018-10-08 02:43:34 +01:00
Tillmann Karras 09385b9542 FIFOAnalyzer: print BP registers without X suffix 2018-10-08 02:00:25 +01:00
Tillmann Karras ec4c019a7b FIFOAnalyzer: fix printing of XF registers 2018-10-08 02:00:25 +01:00
Mat M 74fd95c4c4
Merge pull request #7465 from Tilka/mtfsf_disasm
GekkoDisassembler: fix disassembly of mtfsf
2018-10-07 20:53:55 -04:00
Tilka 63dcd33e9c
Merge pull request #7467 from MerryMage/lXXx
Jit_LoadStore: Name indexed condition
2018-10-07 20:35:05 +01:00
MerryMage 8e3846d844 Jit_LoadStore: Name indexed condition
inst.OPCD == 31 represents an indexed instruction
2018-10-07 20:29:47 +01:00
Jules Blok 1ab1d41b10
Merge pull request #7457 from Tilka/use_clamp
VideoSoftware: make use of Clamp()
2018-10-07 19:53:45 +01:00
Tillmann Karras 29c271d0eb GekkoDisassembler: fix disassembly of mtfsf
This fixes https://dolp.in/i11411.
2018-10-07 17:27:02 +01:00
Tillmann Karras c53cd09b00 BPStructs: don't warn about busclock/perf regs 2018-10-07 16:08:18 +01:00
mazes-80 eae36399dc IOWindow: append new text at the end by default
This fixes https://dolp.in/i11026.
2018-10-07 12:27:05 +01:00
MerryMage d448ed3308 JitRegCache: Fix SanityCheck 2018-10-07 11:48:06 +01:00
MerryMage d5999bc0df JitRegCache: Rename CachedReg function names
* BoundTo -> SetBoundTo
* Flushed -> SetFlushed
* Remove argument from MakeDirty
2018-10-07 11:48:06 +01:00
MerryMage 29d301e303 JitRegCache: Use preg_t for PPC register indexes 2018-10-07 11:48:06 +01:00
MerryMage d9e2b3ed98 JitRegCache: Make {Store,Load}Register protected
No reason for them to be public
2018-10-07 11:48:06 +01:00
MerryMage 66c3d1e183 JitRegCache: Remove FlushR
No external users.
2018-10-07 11:48:05 +01:00
MerryMage ba33e1e69b JitRegCache: Simplify ASSERTs 2018-10-07 11:48:05 +01:00
aldelaro5 4b75876ba1
Qt/debugger: Accept empty prefix input 2018-10-06 21:22:34 -04:00
MerryMage ff0a6b8331 JitRegCache: Encapsulate behavior of X64CachedReg 2018-10-06 19:27:56 +01:00
MerryMage dd41bab365 JitRegCache: Encapsulate behavior of PPCCachedReg 2018-10-06 19:27:56 +01:00
Tilka af2f212039
Merge pull request #7348 from spycrab/gl_cache_shaders
GL/TextureCache: Clean up inline shader code
2018-10-06 00:28:54 +01:00
Tilka 32ef8706e5
Merge pull request #7414 from Sintendo/shortmovs
x64Emitter: emit shorter MOVs for 64-bit immediates
2018-10-06 00:01:35 +01:00
Tilka b480db9392
Merge pull request #7419 from Sintendo/miscopts
Miscellaneous x64 micro-optimizations
2018-10-05 23:44:25 +01:00
Tilka 781b707af8
Merge pull request #7444 from amaiorano/fix-messagebox-icons
Fix QMessageBox icons using the default rather than the Dolphin logo
2018-10-05 23:34:40 +01:00
Tillmann Karras a6a5d86cd8 VideoSoftware: make use of Clamp() 2018-10-05 22:07:38 +01:00
JosJuice 08d0b98988 DiscIO: Merge RegionSwitchGC and RegionSwitchWii 2018-10-05 17:54:29 +02:00
spycrab 6e873c6e06 Qt/GameList: Implement tag system 2018-10-05 08:22:51 +02:00
Antonio Maiorano bf18f19b0a Make the progress dialog look better (used for e.g. shader compiling)
* Removed the Cancel button since the code doesn't react to it anyway.
* Only show a window title, not the help icon (?), and disable the close button
* Set the title to "Dolphin" instead of repeating the label text
2018-10-03 21:35:10 -04:00
Antonio Maiorano f257630c0a Fix resetting emulated wii remote settings to default not updating Extension combo box 2018-10-02 23:34:32 -04:00
Techjar c5b4e1a5f6 Improve SFMLHelper
Switch to using additional overloads of sf::Packet, so we can eliminate
some of the messy code and just use the normal syntax for
BigEndianValue.

We can't avoid helper functions with u64 due to SFML's non-standard way
of defining 64-bit integer types.
2018-10-02 05:44:50 -04:00
Antonio Maiorano 165ac1c29e Fix QMessageBox icons using the default rather than the Dolphin logo 2018-10-02 00:26:43 -04:00
Pierre Bourdon 58b0a284a8
Merge pull request #7408 from AdmiralCurtiss/twin-snakes-cutscene-flicker-fix
Do not consider XFB copies for invalidating textures when loading a new texture.
2018-10-01 22:24:31 +02:00
Pierre Bourdon 91d9190e69
Merge pull request #7442 from shuffle2/fix-sram
mx sram: fix checksum calc; use Common::BigEndianValue for rtc field.
2018-10-01 22:08:42 +02:00
Pierre Bourdon 94c70bf884
Merge pull request #7441 from JosJuice/fix-read-title-id
Fix reading title IDs of Wii discs
2018-10-01 22:07:03 +02:00
Shawn Hoffman 2a0f022da3 mx sram: replace union-with-byte-array with operator[] to make gcc happy. 2018-10-01 00:00:20 -07:00
Shawn Hoffman d300f3bbbc exi ipl: quiet a gcc warning 2018-09-30 18:22:35 -07:00
Shawn Hoffman 2cd96aa5bb mx sram: fix checksum calc; use Common::BigEndianValue for rtc field. 2018-09-30 17:58:37 -07:00
JosJuice 0bcb9923f8 Fix reading title IDs of Wii discs
Partial revert of a1db82a.
Should fix https://bugs.dolphin-emu.org/issues/11404.
2018-09-30 17:46:20 +02:00
Shawn Hoffman d594d4f12f Fix sram accesses. 2018-09-29 22:52:29 -07:00
Sintendo d8953dbe57 x64Emitter: nit, use helper method in CMP_or_TEST 2018-09-29 09:52:54 +02:00
Sintendo ef94fca504 DSPJit: various micro-optimizations 2018-09-29 09:52:30 +02:00
Sintendo e3b424facd EmuCodeBlock: remove redundant instructions
Their result is overwritten by a subsequent MOV.
2018-09-28 23:58:16 +02:00
MerryMage 89a0b0de32 Jit64AsmCommon: Reduce branches in fast-path and inline most behavior
The only behavior requires a function call is denormal behaviour. We also fix fpscr exception raising.
2018-09-28 18:11:30 +01:00
Stenzek 349765ba77 GraphicsWindow: Ensure adapter selection isn't enabled while running 2018-09-28 22:01:23 +10:00
Stenzek eb33d7af64 Core: Call InitBackendInfo before loading config 2018-09-28 21:44:41 +10:00
Stenzek 93923e2b29 Don't fill backend info when core is running
The current approach results in the UI thread creating a graphics device
whilst the core is running, leading to races on function pointers, and
potentially crashing.
2018-09-28 21:43:22 +10:00
Mat M a1db82a72e
Merge pull request #7411 from JosJuice/wii-metadata-unencrypted
Read Wii disc metadata from the unencrypted header
2018-09-28 00:44:25 -04:00
Stenzek a877d5f6dc Remove unused Host_ShowVideoConfig 2018-09-28 14:05:53 +10:00
Mat M a5c74cd6d1
Merge pull request #7382 from stenzek/drop-vk-nv-glsl
Vulkan: Drop usage of VK_NV_glsl extension
2018-09-27 21:56:22 -04:00
Mat M 3cee297c87
Merge pull request #7331 from booto/si_buffer
SI: Add 16bit accessors for SI IO buffer
2018-09-27 21:50:50 -04:00
Mat M d0b2f04539
Merge pull request #7421 from JosJuice/qt-sd-hotplug
DolphinQt: Allow inserting/ejecting SD cards during emulation
2018-09-27 21:48:16 -04:00
Mat M 62b88f890d
Merge pull request #7422 from JosJuice/scrub-unencrypted
Fix scrubbing unencrypted Wii disc images
2018-09-27 21:47:49 -04:00
Roland Munsil 5eefd0482a Fix issue with breakpoint type loaded from settings not propogating to MemoryWindow 2018-09-25 17:45:18 -05:00
Roland Munsil 54bd16e753 Fix typo causing "Remove from Watch" in Cheat Manager to crash Dolphin 2018-09-24 23:01:24 -05:00
Roland Munsil 04969f94b6 Fix some Cheat Manager comparisons being wrong 2018-09-24 21:34:48 -05:00
Markus Wick 85961f996e
Merge pull request #7400 from zackhow/phone-rumble
Android: Add rumble for phone
2018-09-21 17:05:46 +02:00
JosJuice facaeb615e Fix scrubbing unencrypted Wii disc images
Untested with unencrypted Wii disc images, because I don't have any.
I tested that normal Wii disc images still work, though.
2018-09-20 23:23:10 +02:00
JosJuice ce3e0fc091 Refactor DiscScrubber::MarkAsUsedE 2018-09-20 23:23:06 +02:00
JosJuice 5db27b8e7e DolphinQt: Allow inserting/ejecting SD cards during emulation
This is possible on real hardware and was possible in DolphinWX.
2018-09-20 18:41:37 +02:00
Sintendo 53a947749a x64Emitter: short MOV for 64bit immediates (2)
Prior to this commit, the emitter would unconditionally emit a 10-byte
instruction known as MOVABS when loading a 64-bit immediate to a
register.

0:  48 b8 ef be ad de 00    movabs rax,0xdeadbeef
7:  00 00 00

With this change, it will instead rely on the fact that on x64 writes to
32-bit registers are automatically zero extended to 64-bits, allowing
us to emit a 5 or 6-bytes instruction with the same effect for certain
immediates.

0:  b8 ef be ad de          mov    eax,0xdeadbeef
2018-09-16 19:52:03 +02:00
Léo Lam e90bd035cb
Merge pull request #7262 from lioncash/force
ControlGroup: Return state data via GetState() by value where applicable
2018-09-16 16:04:21 +02:00
Léo Lam 5a289de27a Fix BT passthrough by sending larger packets
Fixes a critical regression from 8bb08d1ca6.

In that commit, I replaced a 1024 byte buffer with a SHCIEventCommand.
However, it looks like some Bluetooth adapters actually require such
a large buffer, so this change needs to be reverted.
2018-09-16 15:36:58 +02:00
Léo Lam 40b7fab235
Merge pull request #7261 from lioncash/static
WiimoteReal: Make functions internally linked where applicable
2018-09-16 15:30:25 +02:00
Léo Lam 3ecc4ed1c4
Merge pull request #7390 from Techjar/qt-save-grid-scale
Qt/GameList: Make grid view scale persistent
2018-09-16 15:21:00 +02:00
Léo Lam c49eb2d249
Merge pull request #7398 from Techjar/emu-speed-skip-vsync
VideoCommon: Skip vsync if configured emulation speed is not 100%
2018-09-16 15:19:45 +02:00
Léo Lam 80c402e1ad
Merge pull request #7161 from lioncash/disasm
CMake: Only link in Bochs on x86 platforms
2018-09-16 15:16:00 +02:00
Léo Lam 3a16c0d47e
Merge pull request #7401 from JosJuice/translation-fixes
Translation fixes
2018-09-16 15:09:26 +02:00
Pierre Bourdon e3a52b3361
Merge pull request #7415 from JosJuice/korean-shop-channel-check
Include the Korean Wii Shop Channel when checking default credentials
2018-09-15 17:37:35 +02:00
JosJuice b5bb445f21 Include the Korean Wii Shop Channel when checking default credentials 2018-09-15 17:28:23 +02:00
Admiral H. Curtiss f2fa63783b Do not consider XFB copies for invalidating textures when loading a new texture.
This fixes severe image flickering in some cutscenes of Twin Snakes. The game appears to sometimes load a previously made XFB copy as a texture before it is actually rendered to the screen, which we took as an invitation to invalidate the XFB copy.
2018-09-15 13:56:45 +02:00
Sintendo 575f1b309a x64Emitter: short MOV for 64bit immediates (1)
Prior to this commit, the emitter would unconditionally emit a 10-byte
instruction known as MOVABS when loading a 64-bit immediate to a
register.

0:  48 b8 ef be ad de ff    movabs rax,0xffffffffdeadbeef
7:  ff ff ff

With this change, it will instead emit a 7-byte instruction when it is
possible to express the 64-bit immediate using a signed 32-bit value.

0:  48 c7 c0 ef be ad de    mov    rax,0xffffffffdeadbeef
2018-09-14 23:11:26 +02:00
Admiral H. Curtiss 3e95d3c477 Stitch together overlapping XFB regions in order of XFB copy creation. 2018-09-14 19:41:27 +02:00
Admiral H. Curtiss d97bc0d359 Correctly adjust the rendered XFB region at non-native internal resolutions when XFB was loaded from console RAM.
If, for whatever reason, the XFB has to be loaded from console memory, it's possible that the texture is returned at native resolution instead of EFB-scaled resolution. In this case, our xfb_rect.right adjustment must also happen at native resolution instead of scaled resolution.
2018-09-13 19:39:49 +02:00
JosJuice cec601f1fb Read Wii disc metadata from the unencrypted header
The header of a Wii disc can be read from two places: The
unencrypted area at the beginning of the disc, or the beginning of
the game partition. The two copies are usually identical (except
for 0x60 and 0x61), but there are exceptions. For most of Dolphin's
history, we have been reading from the header inside the game
partition when getting metadata. This was however not the case
starting with 4.0-4901 and ending with 5.0-3762. This commit once
again makes Dolphin read metadata from the unencrypted header,
because of the following reasons that I recently was informed about:

- The "pink fish" disc has the game ID 410E01 in the unencrypted
  header but the placeholder game ID RELSAB in the partition header.
- The revisions of some games differ between the two headers,
  with the unencrypted one making more sense.
  (See https://bugs.dolphin-emu.org/issues/11387)

For better or worse, this also means that sloppily hacked games where
only the game ID in the unencrypted header has been changed now will
use that modified game ID. And unlike with the partition header,
there is no signing or hashing that can tell us whether the
unencrypted header has been modified by someone other than Nintendo.
2018-09-12 13:41:30 +02:00
booto 3825e2e5ff SI: Add 16bit accessors for SI IO buffer
Dolphin has traditionally treated the SI IO buffer (128 bytes) as a set of
32 little endian u32s. This works out fine if you only ever read/write
using aligned 32bit accesses. Different sized accesses or misaligned reads
will mess it up. Byte swapping reads/writes will fix this up, but all the
SI devices that use the SI IO buffer need to be adjusted.
2018-09-11 22:19:13 -04:00
JosJuice fb6b31bba8 Re-add i18n comments that were lost in the DolphinWX removal 2018-09-08 15:58:15 +02:00
JosJuice e0cb56edb9 Reword some translatable strings
We've decided to use the term "Usage Statistics Reporting"
instead of "Analytics" in user-facing strings.
2018-09-08 15:19:01 +02:00
JosJuice 5f35edf505 Remove unused function and translatable strings 2018-09-08 15:18:31 +02:00
JosJuice a4f950ee86 Fix a string not getting translated 2018-09-08 15:16:39 +02:00
zackhow 126ff8dc5f Android: Add rumble for phone
This currently only supports using the internal vibrate on a phone for rumble.
2018-09-07 08:54:03 -04:00
Techjar e9046f8eec VideoCommon: Skip vsync if configured emulation speed is not 100%
It doesn't make much sense to try to vsync at weird framerates, and
vsync actually causes the speed setting to not work as expected.
2018-09-05 05:40:22 -04:00
Techjar bb598529be Qt/GameList: Make grid view scale persistent 2018-09-02 18:22:44 -04:00
Pierre Bourdon 95c2a92f26
Revert "ShaderGen: Drop broken fragment shader index workaround for Vulkan" 2018-09-01 05:32:56 +02:00
spycrab 392df8a11d GL/TextureCache: Clean up inline shader code 2018-08-30 16:05:39 +02:00
MerryMage 9753f21cc7 Arm64Emitter: Remove unsequenced expressions
Incrementing `it` twice between sequence points is undefined behavior.
2018-08-30 07:38:37 +01:00
Stenzek 448e19629d Vulkan: Drop usage of VK_NV_glsl extension
It's not providing a large performance improvement anymore, after the
more recent drivers introduced a new shader compiler.
2018-08-29 13:12:19 +10:00
Stenzek 3ad7812b53 ShaderGen: Drop broken fragment shader index workaround for Vulkan
AMD appears to have since fixed this in their driver, and it makes
shadergen ever so slightly less messy.
2018-08-28 23:39:47 +10:00
JosJuice fbdc239199 Fix reducing log paths when building with MSVC
The LogManager code had trouble detecting the "/Source/Core/" substring
for two reasons, neither of which seemed to happen a few years ago:

1. __FILE__ is in lowercase on MSVC
2. __FILE__ uses backslash as the directory separator on MSVC

Fixes https://bugs.dolphin-emu.org/issues/11366
2018-08-28 11:48:43 +02:00
JosJuice 762747f8c1
Merge pull request #7377 from Techjar/more-frameskip-junk
Core/Core: Remove another leftover part of frameskip
2018-08-28 08:29:43 +02:00
Techjar c5ae721eca Core/Core: Remove another leftover part of frameskip 2018-08-28 02:22:05 -04:00
Pierre Bourdon 2033d660d2
Merge pull request #7376 from lioncash/sfml
Externals: Update SFML to 2.5.0
2018-08-28 02:53:05 +02:00
Lioncash d10a0b440f SFMLHelper: Simplify 64-bit packet reading function and remove 64-bit write function
Now that SFML's packet class can properly handle 64-bit values, we don't
need a helper function just to write values to the packets.
2018-08-27 17:38:07 -04:00
Lioncash e6a4116bf2 Common/SFMLHelper: Remove unused forward declaration
BigEndianValue isn't used in either the header or SFMLHelper.cpp, so it
can be removed.
2018-08-27 16:48:12 -04:00
Pierre Bourdon 4c75331d5d
Merge pull request #7374 from lioncash/iowin
IOWin: Make functions internally linked where applicable
2018-08-27 22:13:24 +02:00
Lioncash 8753321841 IOWin: Use anonymous namespaces where applicable
Several functions (and one variable) were being given external linkage.
Instead, relocate them all to anonymous namespaces to make them
internally linked.
2018-08-27 16:10:07 -04:00
Lioncash d40022d6d0 JitInterface: Move explanatory comment of ClearSafe() to the function's prototype
Puts the comment in the header where it's more likely to be seen
initially. We can also remove the TODO, given doing nothing or returning
an error is what is generally done for the JIT interface if the JIT
instance isn't valid.
2018-08-27 13:04:05 -04:00
Lioncash 36b24bf7a0 PowerPC: Remove Profiler.cpp
With 7aa305ea35 merged, all that remains
within Profiler.cpp is an unused function that just forwards to the
equivalent function within JitInterface. Given that, we can just remove
the source file.
2018-08-27 12:13:39 -04:00
Lioncash 7aa305ea35 Profiler: Migrate global g_ProfileBlocks boolean to JitOptions
This global belongs in the JitOptions structure, as it's a conditional
setting (A.K.A. option) that changes the behavior of what the JIT does.

Plus it keeps the scope of the variable constrained to the general area
it's intended to be used and nothing further.
2018-08-27 11:30:19 -04:00
Pierre Bourdon 88a91562b5
Merge pull request #7370 from lioncash/constness
JitArm64/Jit: Don't cast away const within DumpCode()
2018-08-27 16:31:15 +02:00
Lioncash cc2ef5a2c3 JitArm64/Jit: Don't cast away const within DumpCode()
swap32() has a const u8* overload that swaps the data being pointed to as
if it were a 32-bit word. We can just use that instead. It gets rid of
undefined behavior, as we're not type punning a pointer and dereferencing it,
and gets rid of the need to cast entirely.
2018-08-27 10:28:11 -04:00
Lioncash e81408588f JitCommon/JitCache: Make JitBlock's checkedEntry and normalEntry members non-const pointers
In both cases of the x64 and AArch64 JITs, these would have const casted
away from them, followed by them being placed within an emitter and
having breakpoint instructions written in them.

In this case, we shouldn't be using const period if we're writing to the
emitted data.
2018-08-27 10:23:22 -04:00
Pierre Bourdon 25898cfa55
Merge pull request #7368 from lioncash/const-cast
Arm64Emitter: Make the Align* functions return a non-const data pointer
2018-08-27 15:54:05 +02:00
Lioncash 208be26bb4 Arm64Emitter: Make the Align* functions return a non-const data pointer
Similar in nature to e28d063539 in which
this same change was applied to the x64 emitter.

There's no real requirement to make this const, and this should also
be decided by the calling code, considering we had places that would
simply cast away the const and carry on
2018-08-27 09:44:38 -04:00
Pierre Bourdon 6a22f1b3e0
Merge pull request #7253 from booto/fifo_reg
CP: some bits in some of the HI registers cannot be set
2018-08-27 14:56:12 +02:00
Pierre Bourdon b2b72bd3ce
Merge pull request #7272 from Techjar/xkb-mouse-button-fix
InputCommon/XInput2: Increase mouse buttons to 32
2018-08-27 14:52:37 +02:00
Techjar 311d0442de InputCommon/XInput2: Increase mouse buttons to 32
Xlib supports many mouse buttons, though there are 9 standard buttons, and they aren't arranged like other mouse APIs. Using only 5 buttons was preventing the use of buttons besides left/right/middle click and the scroll wheel. Here's what all the standard buttons are:
1. left button
2. middle button (pressing the scroll wheel)
3. right button
4. turn scroll wheel up
5. turn scroll wheel down
6. push scroll wheel left
7. push scroll wheel right
8. 4th button (aka browser backward button)
9. 5th button (aka browser forward button)

The remaining button indices are non-standard and device-specific, and technically far more than 32 are supported, but this seems like a reasonable limit to avoid cluttering the list with tons of useless mouse buttons. What mouse has more than 32 buttons anyways?
2018-08-27 08:47:32 -04:00
Techjar f1bc17ab9e Qt/MD5Dialog: Fix pressing enter on NetPlay window causing dialog to close 2018-08-27 08:39:39 -04:00
Pierre Bourdon ea26ccbbe1
Merge pull request #7318 from VinDuv/rename-master-log
LogManager: Change Master Log short name to fix log configuration loading
2018-08-27 13:36:04 +02:00
Pierre Bourdon 62928de547
Merge pull request #7357 from Techjar/qt-memcard-manager-select-button
Qt/GCMemcardManager: Make slot and file selection more intuitive
2018-08-27 13:35:38 +02:00
Pierre Bourdon af2e69dfdc
Merge pull request #7366 from Techjar/discord-pics-popular
DiscordPresence: Add popular games to artwork list
2018-08-27 12:40:57 +02:00
Techjar 80c4e77735 DiscordPresence: Add popular games to artwork list 2018-08-27 06:10:11 -04:00
Pierre Bourdon f2323331ea
Merge pull request #7240 from lioncash/namespace
Common/DebugInterface: Namespace code under the Common namespace
2018-08-27 04:49:26 +02:00
Pierre Bourdon 0c39590353
Merge pull request #7229 from lioncash/truncate
Interpreter: Remove an unnecessary cast in Trace()
2018-08-27 04:49:06 +02:00
Pierre Bourdon e096ca20e9
Merge pull request #7358 from Techjar/qt-memcard-manager-deletion-fix
Qt/GCMemcardManager: Fix deletion of multiple files
2018-08-27 04:48:07 +02:00
Pierre Bourdon dbb7563cce
Merge pull request #7363 from Techjar/netplay-hia-comments
NetPlay: Add additional comments for host input authority mode
2018-08-27 04:45:20 +02:00
Pierre Bourdon db55c36f09
Merge pull request #7359 from stenzek/intel-d3d-crash
PixelShaderGen: Ensure all components of ocol1 are initialized
2018-08-27 04:42:28 +02:00
Pierre Bourdon 246b1f4459
Merge pull request #7350 from zackhow/android-analytics
Android: Add usage statistics to android
2018-08-27 04:37:17 +02:00
Techjar 1ba834d13c NetPlay: Add additional comments for host input authority mode 2018-08-26 22:28:23 -04:00
Pierre Bourdon 0cc3ae72a5
Merge pull request #7344 from delroth/discord-pics
DiscordPresence: use game-specific artwork if available
2018-08-27 00:11:21 +02:00
Pierre Bourdon 9bcd7bfe1e
Merge pull request #7360 from Techjar/netplay-host-input-authority
NetPlay host input authority mode
2018-08-26 23:15:44 +02:00
Techjar 5519efa66e NetPlay host input authority mode
Currently, each player buffers their own inputs and sends them to the
host. The host then relays those inputs to everyone else. Every player
waits on inputs from all players to be buffered before continuing. What
this means is all clients run in lockstep, and the total latency of
inputs cannot be lower than the sum of the 2 highest client ping times
in the game (in 3+ player sessions with people across the world, the
latency can be very high).

Host input authority mode changes it so players no longer buffer their
own inputs, and only send them to the host. The host stores only the
most recent input received from a player. The host then sends inputs
for all pads at the SI poll interval, similar to the existing code. If
a player sends inputs to slowly, their last received input is simply
sent again. If they send too quickly, inputs are dropped. This means
that the host has full control over what inputs are actually read by
the game, hence the name of the mode. Also, because the rate at which
inputs are received by SI is decoupled from the rate at which players
are sending inputs, clients are no longer dependent on each other. They
only care what the host is doing. This means that they can set their
buffer individually based on their latency to the host, rather than the
highest latency between any 2 players, allowing someone with lower ping
to the host to have less latency than someone else.

This is a catch to this: as a necessity of how the host's input sending
works, the host has 0 latency. There isn't a good way to fix this, as
input delay is now solely dependent on the real latency to the host's
server. Having differing latency between players would be considered
unfair for competitive play, but for casual play we don't really care.
For this reason though, combined with the potential for a few inputs to
be dropped on a bad connection, the old mode will remain and this new
mode is entirely optional.
2018-08-26 17:10:23 -04:00
BhaaL 5f95ed5263 Jit64: get rid of global g_jit accesses 2018-08-25 16:53:49 +02:00
spycrab 476037d1f2
Merge pull request #7345 from spycrab/qt_cover_uniform
Qt/GridProxyModel: Ensure uniform sizes in cover mode
2018-08-25 02:01:14 +02:00
Stenzek bae1168fe9 PixelShaderGen: Ensure all components of ocol1 are initialized
This was causing a warning in the shader compiler, as the rgb components
were not initialized. Which shouldn't be an issue, as the rgb is not
used in the blend equation, only the alpha. However, the lack of
initialization causes crashes in Intel's D3D shader compiler, so we'll
play nice and initialize all the channels.
2018-08-24 23:53:00 +10:00
Techjar fd7d51eed6 Qt/GCMemcardManager: Fix deletion of multiple files 2018-08-24 07:58:38 -04:00