Lioncash
1a2b48c204
StringUtil: Move ThousandSeparate() into Common namespace
2023-05-16 14:26:33 -04:00
Lioncash
954afd81ec
StringUtil: Move CommandLineToUtf8Argv() into Common namespace
2023-05-16 14:23:21 -04:00
Lioncash
d368c989e7
StringUtil: Move GetEscapedHtml() into Common namespace
2023-05-16 14:21:19 -04:00
Lioncash
21df3ca572
StringUtil: Move IsPrintableCharacter() into Common namespace
2023-05-16 14:17:54 -04:00
Lioncash
a9f1edeb61
StringUtil: Move IsAlpha() into Common namespace
2023-05-16 14:11:02 -04:00
JosJuice
192081d2f1
DiscIO: Improve comments in WIARVZFileReader::Convert
...
Just some clarifications and typo fixes.
2023-05-16 18:58:07 +02:00
Admiral H. Curtiss
28b82ff8d8
IOS/EmulationKernel: Remove m_device_map_mutex, m_device_map is only modified in the constructor and destructor.
2023-05-15 20:54:21 +02:00
Admiral H. Curtiss
b8f3a47fba
IOS: Move more emulation-only stuff from Kernel to EmulationKernel.
2023-05-15 20:41:49 +02:00
Admiral H. Curtiss
3d767edd8a
IOS/FS: Split FSDevice into FSCore and FSDevice.
...
FSCore implements the core functionality that can also be used outside of emulation. FSDevice implements the IOS device and is only available during emulation.
2023-05-15 20:41:47 +02:00
Admiral H. Curtiss
6a339cbdb3
IOS/ES: Split ESDevice into ESCore and ESDevice.
...
ESCore implements the core functionality that can also be used outside of emulation. ESDevice implements the IOS device and is only available during emulation.
2023-05-15 20:41:05 +02:00
Admiral H. Curtiss
df458aed89
CMake: Set --output-on-failure flag for unittests target.
2023-05-14 04:52:50 +02:00
Admiral H. Curtiss
27d90a7d7b
Merge pull request #11779 from ArcaneNibble/sd
...
Support Steam Deck controls natively through hidraw
2023-05-12 22:10:31 +02:00
JosJuice
f78e5f3c03
Merge pull request #11811 from JosJuice/revert-dpi-passthrough
...
Revert "DolphinQt: use default dpi rounding mode (passthrough)"
2023-05-11 23:00:00 +02:00
LillyJadeKatrin
c9c2e17e5a
Added DoFrame to AchievementManager
...
DoFrame is a function called every frame by the emulator so that rcheevos can be properly updated and processed. It requires a memory peeker and an event handler to be passed in; the memory peeker is called repeatedly each frame to measure what's in memory and compare to achievement definitions, and any events thrown by that comparison are sent to the event handler.
Also, DoFrame checks for the current system time to determine when to ping rich presence. Rich Presence on the RetroAchievements website updates every two minutes, so if two minutes have elapsed since the previous ping, another ping is sent.
2023-05-11 07:56:12 -04:00
LillyJadeKatrin
22ee729055
Added GenerateRichPresence to AchievementManager
...
GenerateRichPresence calls rc_runtime_get_richpresence in rhceevos on the achievement runtime to get the current Rich Presence string, a description of the player's current in-game state based on its memory as fed into a custom-developed script downloaded via FetchGameData. This gets passed into PingRichPresence, but is separated into its own method so it can be used elsewhere locally.
2023-05-11 07:56:12 -04:00
LillyJadeKatrin
1b880564cb
Added MemoryPeeker to AchievementManager
...
MemoryPeeker is a function passed by pointer into rcheevos DoFrame functionality that forms the lynchpin of the rcheevos runtime - it provides the interface by which rcheevos accesses memory and determines if the fields provided by achievement, leaderboard, and rich presence definitions are meeting the criteria needed.
2023-05-11 07:56:12 -04:00
LillyJadeKatrin
ed121a4033
Added AchievementEventHandler to AchievementManager
...
AchievementEventHandler simply checks which kind of event is triggered and calls the appropriate function. Its primary purpose is as a function to be pointed to.
2023-05-11 07:56:11 -04:00
LillyJadeKatrin
a48fab0abf
Added HandleLeaderboardTriggeredEvent to AchievementManager
...
HandleLeaderboardTriggeredEvent processes a leaderboard event and asynchronizes via the work queue a synchronous call to SubmitLeaderboard.
2023-05-11 07:56:11 -04:00
LillyJadeKatrin
637ca82fc1
Added HandleAchievementTriggeredEvent to AchievementManager
...
HandleAchievementTriggeredEvent is an asynchronous method that processes an event and places a synchronous AwardAchievement call on the work queue. In the process, it also updates the unlock map and makes the ActivateDeactivateAchievement call to determine and adjust the achievement's current active state.
2023-05-11 07:56:11 -04:00
LillyJadeKatrin
66b8731bdb
Added PingRichPresence to AchievementManager
...
PingRichPresence makes a "ping" API request to the RetroAchievements website with the provided RichPresence string parameter. While there has been talk about tying ping in with session, in its current state the primary purpose of ping is to send the player's Rich Presence to the website.
2023-05-11 07:56:11 -04:00
Sketch
a383e0cfd5
UICommon:DiscordPresence: Use GameTDB covers for RPC
2023-05-10 23:55:34 -04:00
LillyJadeKatrin
69014e1359
Added SubmitLeaderboard to AchievementManager
...
SubmitLeaderboard submits the player's score/time to a leaderboard on the website via an API call.
2023-05-10 21:15:40 -04:00
LillyJadeKatrin
9a57216fd0
Added AwardAchievement to AchievementManager
...
AwardAchievement performs the API call to notify the site that an achievement has been unlocked. As one of the parameters is the game hash (something I overlooked previously; I thought it was the game ID) this change also moves the game hash into a member field.
2023-05-10 21:15:40 -04:00
Admiral H. Curtiss
ab98db445d
Common/MemArenaAndroid: Keep fastmem region mapped.
2023-05-11 03:01:05 +02:00
R
c5d2ad99d2
Support Steam Deck controls directly through hidraw
...
This reads Steam Deck controls bypassing Steam Input. This allows for access to
motion controls as well as independent access to thumb sticks, trackpads, and
back grip buttons.
2023-05-10 13:28:32 +01:00
Admiral H. Curtiss
8c67083c87
Merge pull request #11813 from lioncash/insert
...
PPCSymbolDB: Use emplace() where applicable
2023-05-09 18:48:06 +02:00
Admiral H. Curtiss
c766b2f8a2
Merge pull request #11815 from lioncash/ppcinc
...
PPCTables: Remove unnecessary includes
2023-05-09 18:45:45 +02:00
JosJuice
82f70cdf94
ControllerInterface/Android: Add some missing DeleteLocalRef calls
2023-05-07 18:44:43 +02:00
JosJuice
24a697514e
ControllerInterface/Android: Use InputEvent.getDeviceId
...
Instead of InputEvent.getDevice followed by InputDevice.getId.
Should hopefully fix https://bugs.dolphin-emu.org/issues/13237 ,
while also being simpler.
2023-05-07 18:40:28 +02:00
Pokechu22
810eb70f0e
DolphinAnalytics: Add READS_BOUNDING_BOX game quirk
2023-05-06 17:18:17 -07:00
Lioncash
2561028b91
PPCTables: Remove unnecessary includes
...
Gets rid of a lingering dependency on the interpreter in common code and
a bunch of indirect inclusions.
2023-05-03 21:47:10 -04:00
JosJuice
2319210d85
Merge pull request #11810 from lioncash/jitreg
...
Common/JitRegister: Move interface into Common namespace
2023-05-03 17:43:01 +02:00
Lioncash
15d1ae3a8a
SymbolDB: Add constructors to Symbol
...
Allows for much more convenient in-place construction.
2023-05-02 16:04:47 -04:00
Lioncash
a14d8003f4
PPCSymbolDB: Use emplace() where applicable
...
Avoids default constructing an entry in the map that just gets
immediately overwritten. Also gets rid of some redundant map lookups.
2023-05-02 15:51:52 -04:00
Lioncash
56775e4901
JitInterface: Remove global system accessor
...
We can use JitInterface's system member variable to avoid needing this
2023-05-02 15:21:58 -04:00
Mai
0b9b09ad32
Merge pull request #11796 from sepalani/gecko-sort
...
Gecko/ARCode: Add sort by enabled state
2023-05-02 14:59:08 -04:00
Sepalani
2635595737
ARCode: Add sort by enabled state
2023-05-02 22:24:21 +04:00
Sepalani
81ec90be9c
GeckoCode: Add sort by enabled state
2023-05-02 22:23:43 +04:00
JosJuice
20e14aab06
Revert "DolphinQt: use default dpi rounding mode (passthrough)"
...
This reverts commit cfe3683668
.
On Windows systems with 125% DPI scaling, this was causing both icons
and the OSD to be upscaled by 25% using nearest neighbor scaling, which
looks really bad. shuffle2 has said that this will be improved later,
but we should revert it for now for the sake of the upcoming beta build.
2023-05-02 20:18:56 +02:00
Lioncash
4db186f9ff
Common/JitRegister: Move interface into Common namespace
...
Makes the namespace consistent with other common utilities.
2023-05-02 12:00:05 -04:00
sowens99
9b1d657614
Qt: Prevent savestate load/save on empty filename
2023-05-01 19:57:58 -04:00
Léo Lam
0eeeac2487
Merge pull request #11736 from noahpistilli/get-scheduler-stat
...
IOS/Network/KD: Implement GetSchedulerStat
2023-05-01 01:19:11 +01:00
Léo Lam
2e39c79984
Merge pull request #11805 from Dentomologist/remove_graphicswidget
...
Qt: Remove GraphicsWidget class
2023-04-30 02:15:30 +01:00
Léo Lam
3c9162f35e
Merge pull request #11807 from brad0/openbsd_thread_cpp_build_fix
...
Fix building on OpenBSD
2023-04-30 02:14:41 +01:00
Léo Lam
f36e05ad3e
Merge pull request #11546 from deReeperJosh/disneyinfinitybase
...
Feature: Emulate Infinity Base
2023-04-30 02:13:39 +01:00
Brad Smith
29a8226ac5
Fix building on OpenBSD
...
86c1f6e1e7
introduced code that had not
been build tested on OpenBSD.
https://bugs.dolphin-emu.org/issues/13241
2023-04-29 19:21:48 -04:00
TellowKrinkle
f92dde26a3
CMake: Fix storyboard copying
2023-04-29 16:10:38 -05:00
Dentomologist
5ca0430cb2
Qt: Remove GraphicsWidget class
...
The old tooltip description box used GraphicsWidget to provide shared
code to the Graphics config panes for adding descriptions to their
settings.
The description box has been replaced by BalloonTips and serves no
further purpose, so remove it and have the Graphics panes derive from
QWidget instead.
2023-04-29 14:10:37 -07:00
Mai
d95a85212f
Merge pull request #11793 from brad0/openbsd_iconv_build_fix
...
Fix build of iconv code on OpenBSD
2023-04-29 17:08:36 -04:00
Dentomologist
57a1339cfb
Qt: Rename GraphicsInteger to ConfigInteger
...
GraphicsInteger is used by the panes in the Graphics config window to
create spin boxes that change their associated config setting, and
update their own state when something else changes the config setting.
Despite its current name nothing about this class is particular to the
Graphics window, so renaming it to ConfigInteger better reflects its
purpose. This should also make it less confusing when ConfigIntegers
are added to other config windows.
2023-04-29 11:09:59 -07:00
Admiral H. Curtiss
6e6865a63a
Merge pull request #11785 from shuffle2/qtnext3
...
DolphinQt: cache icons instead of single pixmaps
2023-04-29 17:32:29 +02:00
Admiral H. Curtiss
79607a060c
Merge pull request #11802 from Dentomologist/rename_graphicsslider_to_configslider
...
Qt: Rename GraphicsSlider to ConfigSlider
2023-04-29 16:47:56 +02:00
Admiral H. Curtiss
aaf11e626a
Merge pull request #11803 from LillyJadeKatrin/retroachievements-bugfix
...
Added Invalid Request Drop to AchievementManager Request
2023-04-29 16:46:59 +02:00
OatmealDome
28f1a4cec1
Merge pull request #11757 from TellowKrinkle/BCniOS
...
Enable BCn texture support on iOS where available
2023-04-29 08:54:18 +02:00
LillyJadeKatrin
9778640a84
Added Invalid Request Drop to AchievementManager Request
...
This fixes a crash I found in the Request function of AchievementManager where under certain conditions init_request would return an api_request with null post data, and Post would crash if it attempted to access it. Now the function aborts before the Post and returns an INVALID_REQUEST response type.
2023-04-29 00:05:32 -04:00
Dentomologist
1a2a99c9b3
Qt: Rename GraphicsSlider to ConfigSlider
...
GraphicsSlider is used by the panes in the Graphics config window to
create sliders that change their associated config setting, and update
their own state when something else changes the config setting.
Despite its current name nothing about this class is particular to the
Graphics window, so renaming it to ConfigSlider better reflects its
purpose. This should also make it less confusing when ConfigSliders are
added to other config panes.
2023-04-28 20:14:11 -07:00
TellowKrinkle
9cc3ba6fc6
VideoBackends:Metal: Enable BCn support on iOS
2023-04-28 20:35:54 -05:00
Joshua de Reeper
529d0a1c63
Infinity Base: Code tidyups and de-duplication
2023-04-28 16:51:43 +12:00
Dentomologist
a7abd7dba0
Qt: Rename GraphicsRadioInt to ConfigRadioInt
...
GraphicsRadioInt is used by the panes in the Graphics config window to
create radio buttons that change their associated config setting, and
update their own state when something else changes the config setting.
Despite its current name nothing about this class is particular to the
Graphics window, so renaming it to ConfigRadioInt better reflects its
purpose. This should also make it less confusing when ConfigRadioInts
are added to other config panes.
2023-04-27 20:01:04 -07:00
Joshua de Reeper
f632f94645
Feature: Emulate Disney Infinity Base
...
Create, Load and Clear Infinity figures on an emulated base in the UI
2023-04-28 12:29:34 +12:00
Dentomologist
b59ca9682e
Qt/GeneralWidget and GraphicsWidget: Remove unused member variable
...
m_xrr_config was used by the GeneralWidget::GetAvailableResolutions
function to get the list of supported fullscreen resolutions when
HAVE_XRANDR was set. aa4088a
removed the ability to set that resolution
in the UI, leaving the GetAvailableResolutions function unused.
m_xrr_config is initialized in MainWindow which still uses it to toggle
fullscreen, but the references in GeneralWidget and GraphicsWidget
(which just ferried m_xrr_config from MainWindow to GeneralWidget) are
now unnecessary and removed in this commit.
2023-04-27 16:50:56 -07:00
Léo Lam
a75d22d901
Merge pull request #11797 from Dentomologist/remove_unused_videoutils_function
...
VideoUtils: Remove unused function GetAvailableResolutions
2023-04-28 00:37:43 +01:00
Léo Lam
c19be2a3cf
Merge pull request #11799 from Dentomologist/graphicswindow_remove_member_variables
...
Qt/GraphicsWindow: Remove unnecessary member variables
2023-04-28 00:36:56 +01:00
Léo Lam
89154c858b
Merge pull request #11787 from AdmiralCurtiss/ios-emulationkernel
...
IOS: Leverage Kernel/EmulationKernel difference for passing System to most IOS devices.
2023-04-28 00:36:03 +01:00
Dentomologist
f4751b1547
Qt/GraphicsWindow: Remove unnecessary member variables
...
These variables are only used in CreateMainLayout and can thus be local
instead.
2023-04-26 16:46:45 -07:00
Dentomologist
1f74653501
VideoUtils: Remove unused function GetAvailableResolutions
...
The ability to change the fullscreen resolution througnh the UI was
removed in aa4088a
, leaving this function unused.
2023-04-26 15:22:54 -07:00
Mai
adbee91dca
Merge pull request #11794 from shuffle2/color-scheme-changed
...
DolphinQt: reset stylesheets on colorSchemeChanged
2023-04-26 04:12:03 -04:00
Mai
e483b5693f
Merge pull request #11795 from Dentomologist/rename_graphicschoice_to_configchoice
...
Qt: Rename GraphicsChoice to ConfigChoice
2023-04-26 04:10:58 -04:00
Shawn Hoffman
bb227ad7bb
DolphinQt: reset stylesheets on colorSchemeChanged
...
This is required for switching system color scheme
(dark/light) dynamically at runtime.
2023-04-25 12:34:34 -07:00
Shawn Hoffman
51e528e45f
DolphinQt: cache icons instead of single pixmaps
...
Fixes dynamically changing dpi scaling.
Load resources from svg if possible.
Currently svg support is not in Qt build in Externals,
and image files need to be added later.
2023-04-25 12:34:27 -07:00
Mai
8c2e924255
Merge pull request #11774 from shuffle2/qtnext
...
DolphinQt: fix some usability issues
2023-04-25 15:24:44 -04:00
Dentomologist
2237a4a7aa
Qt: Rename GraphicsChoice to ConfigChoice
...
GraphicsChoice is used by the panes in the Graphics config window to
create combo boxes that change their associated config setting, and
update their own state when something else changes the config setting.
Despite its current name nothing about this class is particular to the
Graphics window, so renaming it to ConfigChoice better reflects its
purpose. This should also make it less confusing when ConfigChoices are
eventually added to the other config windows.
2023-04-25 11:39:24 -07:00
Shawn Hoffman
b00e898aff
DolphinQt: fix handling of Qt-specific cmdline args
...
QApplication should parse and remove and args it recognizes
before dolphin starts inspecting the args.
This allows using e.g. -style <style> on the commandline.
2023-04-25 10:50:49 -07:00
Shawn Hoffman
b20cc6b67e
DolphinQt: dont set dpi awareness in manifest
...
Qt already does this itself programmatically.
Setting in the manifest interferes with Qt's
internal handling of dpi awareness.
2023-04-25 10:49:46 -07:00
Shawn Hoffman
258cf0ff28
DolphinQt: assume QT_VERSION_CHECK >= 6.0.0
2023-04-25 10:39:05 -07:00
Shawn Hoffman
ce9413e549
cmake: drop qt5
2023-04-25 10:37:26 -07:00
Shawn Hoffman
97157eaf5c
DolphinQt: use new style of addAction API
2023-04-25 10:37:26 -07:00
Mai
b9a7f577a5
Merge pull request #11765 from Minty-Meeo/ppc-cache-savestate
...
Fix PPCCache savestate behavior
2023-04-25 05:40:15 -04:00
Mai
6bdfcc606f
Merge pull request #11788 from shuffle2/qtdpiround
...
DolphinQt: use default dpi rounding mode (passthrough)
2023-04-25 04:05:41 -04:00
Brad Smith
c9bbb12c2e
Fix build of iconv code on OpenBSD
2023-04-25 01:22:05 -04:00
Admiral H. Curtiss
15a0860f15
IOS: Leverage Kernel/EmulationKernel difference for passing System to most IOS devices.
2023-04-25 02:22:34 +02:00
Léo Lam
ba150a6824
Merge pull request #11790 from AdmiralCurtiss/network-widget-workaround
...
Qt/NetworkWidget: Don't update if not paused.
2023-04-25 01:07:42 +01:00
Léo Lam
77b334b47b
Merge pull request #11791 from lioncash/traverse
...
Common/Traversal: Move interface into Common namespace
2023-04-25 01:05:41 +01:00
Léo Lam
e5f7522711
Merge pull request #11792 from lioncash/trace
...
Common: Move CodeTrace.cpp/.h into Core
2023-04-25 01:04:36 +01:00
Léo Lam
1379a33102
Merge pull request #11780 from Dentomologist/rename_graphicsbool_to_configbool
...
Qt: Rename GraphicsBool to ConfigBool
2023-04-25 01:03:22 +01:00
Lioncash
d991cbaf3c
Common: Move CodeTrace.cpp/.h into Core
...
This interface relies on Core details and shouldn't be in Common to
begin with, since it's not a general utility.
2023-04-24 09:10:43 -04:00
Lioncash
30e7ab94fa
Common/TraversalProto: Move interface into Common namespace
...
Gets the types out of the global namespace.
2023-04-24 08:53:14 -04:00
Lioncash
27f38c6c8f
Common/TraversalClient: Move interface into Common namespace
...
Gets the interface out of the global namespace.
2023-04-24 08:28:25 -04:00
Pokechu22
2f4a3d6f60
PPCCache: Always invalidate on icbi, even if icache is disabled
...
This is more accurate, although it should not make a difference in practice.
2023-04-23 15:37:24 -07:00
Admiral H. Curtiss
8a6118bec6
Qt/NetworkWidget: Don't update if not paused.
...
This is similar to https://github.com/dolphin-emu/dolphin/pull/11623 where the Core state change invoked by the CPUThreadGuard does indirectly cause another Update() call.
2023-04-23 21:48:23 +02:00
Shawn Hoffman
cfe3683668
DolphinQt: use default dpi rounding mode (passthrough)
2023-04-23 11:56:39 -07:00
Admiral H. Curtiss
4d49902b34
IOS: Only construct DolphinDevice on EmulationKernel IOS instances.
...
Doesn't make much sense to have this active without a game.
2023-04-23 20:09:32 +02:00
Admiral H. Curtiss
ffbbd72741
Merge pull request #11767 from AdmiralCurtiss/wii-sock-man
...
IOS/WiiSockMan: Move instance to IOS Kernel.
2023-04-23 20:07:34 +02:00
Admiral H. Curtiss
5df7c8833a
Merge pull request #11784 from Minty-Meeo/mgba-screen-api
...
GBACore.cpp: Update to revised screen size/info API
2023-04-23 16:10:51 +02:00
Admiral H. Curtiss
653be9e45d
Merge pull request #11628 from Pokechu22/gles-32-only-multisample
...
OGL: Only specify precision for sampler2DMSArray when it is defined
2023-04-23 16:02:15 +02:00
Admiral H. Curtiss
00e4fc4b70
Netplay: Check if save is readable before marking it for sync.
2023-04-23 15:52:38 +02:00
get
c9b26e3db2
Update mGBA submodule to 8739b22fbc90fdf0b4f6612ef9c0520f0ba44a51
2023-04-23 05:26:40 -05:00
get
0948f0ef69
Fix PPCCache savestate behavior
...
PR #11183 regressed the lookup table reconstruction and, for some reason, added an else clause that clobbered the dCache whenever dCache emulation is turned on.
2023-04-23 00:53:01 -05:00
Pokechu22
8fbfee03ab
Merge pull request #11764 from Minty-Meeo/ppc-cache-extendo-ram
...
Do not use magic numbers for RAM sizes/masks in PPCCache
2023-04-22 12:44:34 -07:00
Dentomologist
5fa27704c8
Qt: Rename GraphicsBool to ConfigBool
...
GraphicsBool is used by the panes in the Graphics config window to
create checkboxes that change their associated config setting, and
update their own state when something else changes the config setting.
Despite its current name nothing about this class is particular to the
Graphics window, so renaming it to ConfigBool better reflects its
purpose. This should also make it less confusing when ConfigBools are
eventually added to the other config windows.
2023-04-21 14:24:37 -07:00
get
9ba26670b8
Do not use magic numbers for RAM sizes/masks in PPCCache
...
Memory Override + Write-Back Cache emulation = game crash
2023-04-20 19:32:35 -05:00
Admiral H. Curtiss
be1f2a6852
Merge pull request #11773 from lioncash/delete
...
Common/TraversalClient: Use correct deleter with g_MainNetHost
2023-04-20 22:17:19 +02:00
Mai
c3cc1de54e
Merge pull request #11777 from Dentomologist/move_balloontip_files
...
Qt/Config: Move BalloonTip files from Graphics to ToolTipControls
2023-04-20 10:45:03 -04:00
Dentomologist
4174f0063e
Qt: Remove unused class GraphicsBoolEx
...
In older versions of Dolphin GraphicsBoolEx was used to create a pair of
radio buttons selecting one of Virtual XFB and Real XFB, but this was
removed with the introduction of Hybrid XFB in 65cd085f
.
In the meantime GraphicsRadioInt was introduced to allow for Graphics
radio buttons with multiple options, so GraphicsBoolEx is now redundant.
2023-04-19 16:58:42 -07:00
Dentomologist
7a78ace608
Qt/Config: Move BalloonTip.h/cpp from Graphics to ToolTipControls
...
BalloonTip.h/cpp are only used from the ToolTipControls folder, so move
them there.
2023-04-19 16:46:46 -07:00
Lioncash
b4cc1ade02
Common/TraversalClient: Use correct deleter with g_MainNetHost
...
Previously this was using the default deleter (which just calls delete
on the pointer), which is incorrect, since the ENetHost instance is
allocated through ENet's C API, so we need to use its functions to
deallocate the host instead.
2023-04-19 12:38:16 -04:00
Lioncash
07ed932a09
Common/LinearDiskCache: Move interface into Common namespace
...
Gets the interface out of the global namespace.
2023-04-19 09:14:39 -04:00
Admiral H. Curtiss
2a0b90807d
Merge pull request #11770 from lioncash/err
...
Common/CommonFuncs: Move interface into Common namespace
2023-04-19 10:38:22 +02:00
Lioncash
f1ad43afaf
Common/CommonFuncs: Move interface into Common namespace
...
Gets these functions out of the global namespace.
2023-04-18 19:23:04 -04:00
OatmealDome
8aae296d4e
Merge pull request #11759 from TellowKrinkle/MTLPerfQueryFixes
...
VideoBackends:Metal: Fix perf queries
2023-04-18 22:15:50 +02:00
Admiral H. Curtiss
2e7f0d002e
Merge pull request #11760 from Minty-Meeo/embracing-nullptr
...
Embrace nullptr over NULL and 0
2023-04-18 22:14:11 +02:00
OatmealDome
8a355dbbd7
Merge pull request #11708 from TellowKrinkle/MetalMaxPixSamplers
...
VideoBackends:Metal: Use max pixel samplers constant
2023-04-18 22:11:06 +02:00
Admiral H. Curtiss
a239af162d
Merge pull request #11768 from Pokechu22/temporary-debug-command-line
...
Treat --debugger command line as a temporary setting
2023-04-18 22:05:08 +02:00
Admiral H. Curtiss
361ffd5917
Merge pull request #11752 from LillyJadeKatrin/retroachievements-activate
...
Retroachievements activate
2023-04-18 18:38:53 +02:00
Admiral H. Curtiss
1c1b0fee25
Merge pull request #11769 from AdmiralCurtiss/ra-no-volume
...
AchievementManager: Fix crash when launching non-disc game.
2023-04-18 18:38:16 +02:00
JosJuice
969318ff66
Merge pull request #11761 from lioncash/mathrev
...
Common/MathUtil: Move remaining utilities into MathUtil namespace
2023-04-18 18:05:12 +02:00
Admiral H. Curtiss
9600bf1af9
Qt/WiiPane: Add setting for SD card file size when converting.
2023-04-18 11:04:26 +02:00
Admiral H. Curtiss
d861b8caca
Config: Add setting for SD card file size when converting.
2023-04-18 11:04:26 +02:00
Admiral H. Curtiss
a4e1e23c34
AchievementManager: Fix crash when launching non-disc game.
2023-04-18 11:01:11 +02:00
Pokechu22
801fa8e905
Only force-show the code widget when first enabling the debugger
...
Before, any call of Settings::SetDebugModeEnabled(true) would show it. This means that if the debugging UI is enabled, but the user manually closed the code widget, then toggling any option on the interface pane (such as "Pause on Focus Loss") would cause the code widget to reappear. Additionally, closing and reopening dolphin did not call SetDebugModeEnabled, so the code widget did not reappear in that case (it only appeared after touching the interface pane). This is a bit silly, so now only enabling the debugger does it.
This also somewhat resolves an inconsistency introduced by the previous commit: prior to it, --debugger would call SetDebugModeEnabled(true) and thus show the code pane; after these commits, it does not, as it acts like a config change. This is a behavior difference, but not a particularly important one.
2023-04-17 23:23:36 -07:00
Pokechu22
c0b6e9e69c
Treat --debugger command line as a temporary setting
...
Before, Settings::SetDebugModeEnabled was used; this calls SetBaseOrCurrent() which will usually permanently change the base configuration setting for the debugger to true. Thus, the debugger would remain active even if the --debugger command line option was removed. Now, it remains active only for the current run, like other command-line options.
Note that SetBaseOrCurrent is also used by the "Show Debugging UI" option under Options -> Interface; this means that if the debugger is turned off (or off and then back on) by the user while --debugger is specified, this will be reset to whatever the base configuration had when Dolphin is closed and reopened. This behavior is consistent with the rest of the UI.
To my understanding, the --debugger option is something from 5.0 stable/DolphinWx where there was no way to toggle the debug UI in the settings (and the command-line option was the only way of enabling it). It's less useful nowadays.
2023-04-17 23:11:26 -07:00
Admiral H. Curtiss
b2ee958058
IOS/WiiSockMan: Move instance to IOS Kernel.
2023-04-18 01:24:10 +02:00
Sketch
467b961e9c
IOS/Network/KD: Implement GetSchedulerStat
2023-04-17 11:38:42 -04:00
Admiral H. Curtiss
37a30a5e50
IOS/WiiSockMan: Remove declaration to nonexistent DecodeError().
2023-04-17 03:43:29 +02:00
Mai
1a2dcc53f2
Merge pull request #11742 from K0bin/document-provider-2
...
Android: Document Provider improvements
2023-04-16 04:21:33 -04:00
get
a5d06fde4b
Embrace nullptr over NULL and 0
2023-04-15 16:07:05 -05:00
Robin Kertels
57ed5320b5
Android: Fix various issues with the DocumentProvider
...
Fixes copying & deleting folders and copy conflict handling.
2023-04-15 20:53:01 +02:00
Lioncash
784a216927
Common/MathUtil: Move IntLog2 into MathUtil namespace
...
Gets this out of the global namespace.
2023-04-15 03:35:05 -04:00
Lioncash
5e0c20f8a5
Common/MathUtil: Remove MathFloatVectorSum()
...
This isn't used anywhere and not really a generic utility, so we can get
rid of it.
This also lets us remove MathUtil.cpp, since this was the only thing
within that file.
2023-04-15 03:25:38 -04:00
LillyJadeKatrin
31c3288fd5
Added ActivateDeactivateRichPresence to AchievementManager
...
RetroAchievements Rich Presence is a script that is run periodically on a game's memory to provide a detailed text description of what the player is doing. Existing Discord presence on Dolphin would update a player's Discord status to say not just that they are using Dolphin but that they are playing, for example, Sonic Adventure 2 Battle; Rich Presence would detail that the player is in City Escape with 5 lives and 142 rings.
Activating this in the runtime simply entails loading that text script, as returned by the FetchGameData API call, into the runtime, here only determined by whether rich presence is enabled in the achievement settings. Deactivating this is done via the same rcheevos method by setting the rich presence to an empty string.
2023-04-14 22:22:00 -04:00
LillyJadeKatrin
64e3a64c87
Added ActivateDeactivateLeaderboards to AchievementManager
...
This activates or deactivates leaderboards in the rcheevos runtime similarly to achievements. The logic is much more straightforward - all leaderboards are active together; there is nothing requiring some leaderboards to be active while others are unactive, and even a leaderboard that has been submitted to in this session is still active to be submitted to again. The only criteria are that leaderboards must be enabled in the settings, and hardcore mode must be on, the latter of which is false until a future PR.
2023-04-14 22:22:00 -04:00
LillyJadeKatrin
da1de36cb9
Added LoadUnlockData and ActivateDeactivateAchievements to AchievementManager
...
LoadUnlockData and ActivateDeactivateAchievements are the public API components responding to the FetchUnlocks and A/DAchievement (singular) private methods.
LoadUnlockData is asynchronous and performs both a hardcore and a softcore unlock call, updating the unlock map and the active status of any achievements returned from these calls.
ActivateDeactivateAchievements calls ActivateDeactivateAchievement on every achievement ID found in m_game_data, initializing the unlock map for each ID if not already found.
Both of these are currently called in LoadGameByFilenameAsync once the game has been loaded properly. There's a lock around this, to ensure that the unlock map is initialized properly by ActivateDeactivate Achievements before FetchUnlockData makes modifications to it without stalling the async portions of FetchUnlockData.
2023-04-14 22:22:00 -04:00
LillyJadeKatrin
db44e10057
Added FetchUnlockData to AchievementManager
...
FetchUnlockData is an API call to RetroAchievements that downloads a list of achievement IDs for a game that the user has already unlocked and published to the site. It accepts a parameter for whether or not hardcore or softcore achievements are being requested, so that must be provided as well. Once it has the requested list on hand, it updates each achievement's status in the unlock map and will activate or deactivate achievements as necessary.
2023-04-14 22:22:00 -04:00
LillyJadeKatrin
505f40cf9d
Added ActivateDeactivateAchievement to AchievementManager
...
ActivateDeactivateAchievement is passed an Achievement ID as returned from the FetchGameData API call and determines whether to activate it, deactivate it, or leave it where it is based on its current known state and what settings are enabled.
Activating or deactivating an achievement entails calling a method provided by rcheevos that performs this on the rcheevos runtime. Activating an achievement loads its memory signature into the runtime; now the runtime will process the achievement each time the rc_runtime_do_frame function is called (this will be in a future PR) to determine when the achievement's requirements are met. Deactivating an achievement unloads it from the runtime.
The specific logic to determine whether an achievement is active operates over many fields but is documented in detail inside the function. There are multiple settings flags for which achievements are enabled (one flag for all achievements, an "unofficial" flag for enabling achievements marked as unofficial i.e. those that have logic on the site but have not yet been officially approved, and an "encore" flag that enables achievements the player has already unlocked) and this function also evaluates whether the achievement has been unlocked in hardcore mode or softcore mode (though currently every reference to the current hardcore mode state is hardcoded as false).
2023-04-14 17:15:45 -04:00
Admiral H. Curtiss
e9dbb93cb5
Merge pull request #11756 from lioncash/ini
...
Common/IniFile: Move interface into Common namespace
2023-04-14 20:52:30 +02:00
TellowKrinkle
09c80513cd
VideoBackends:Metal: Fix perf queries
...
Fixes an issue where perf queries could end up including counts from previous queries
2023-04-14 00:25:31 -05:00
Jeffrey Bosboom
c6f9e61d38
XInput2: Accept input from keyboards other than the first master
...
XInput2 was created to support multiple pointer/keyboard pairs (often
called MPX for multi-pointer X). Dolphin's XInput2 implementation has
always supported MPX by creating a KeyboardMouse object per master
pointer. Since commit bbb12a7
, Dolphin's keyboard state is filtered by
the output of XQueryKeymap. As a core X function, XQueryKeymap queries
"the" keyboard, which by default is the first master keyboard. As a
result, Dolphin will ignore keys pressed on other master keyboards
unless the first master is simultaneously pressing the same keys.
XInput2 doesn't provide a function to query the keyboard state. There
is no XIQueryKeymap and the current state is not a member of the
XIKeyClassInfo returned by XIQueryDevice. Instead, XInput2 allows a
master pointer to be nominated as "the" pointer on a per-client basis,
with "the" keyboard automatically becoming the associated master
keyboard. The "documentation" [1] says passing None for the window is
only for debugging purposes, but it is documented in the
XISetClientPointer man page and seems to be the only way to query
keyboards beyond the first.
With this commit, Dolphin correctly reads keys from keyboards other than
the first master keyboard. To test, use the xinput command-line utility
to create a master pointer and reattach a keyboard to the associated
master keyboard.
[1]: https://who-t.blogspot.com/2009/07/xi2-recipes-part-6.html
(the XInput2 developer's blog)
2023-04-13 20:10:00 -07:00
Léo Lam
ae18aa0639
Merge pull request #11687 from Minty-Meeo/warnings
...
Resolve GCC/Clang Warnings
2023-04-14 01:29:46 +01:00
Lioncash
e4caace6bb
Common/IniFile: Move interface into Common namespace
...
Gets this out of the global namespace and into the Common namespace
2023-04-13 10:19:28 -04:00
Lioncash
f5bdfdde1a
Common/UPnP: Move interface into Common namespace
...
Keeps these utilities consistent with the rest of most of the Common
library.
2023-04-12 14:15:58 -04:00
Minty-Meeo
f29019180f
Pragma diagnostic ignore [-Wregister] is no longer needed
2023-04-12 03:59:57 -05:00
Minty-Meeo
65edfb0eed
Resolve [-Wunused-const-variable]
2023-04-12 03:59:57 -05:00
Minty-Meeo
244918acb8
Resolve [-Wdeprecated-declarations]
2023-04-12 03:59:57 -05:00
Minty-Meeo
528f7c90e9
Resolve [-Wtautological-constant-out-of-range-compare]
2023-04-12 03:59:57 -05:00
Minty-Meeo
efd06a85d2
Resolve [-Wunused-but-set-variable]
2023-04-12 03:59:57 -05:00
Minty-Meeo
678c93589a
Resolve [-Wclass-memaccess]
2023-04-12 03:59:57 -05:00
LillyJadeKatrin
8b57c4b239
Added LoadGameByFilenameAsync and CloseGame to AchievementManager
...
LoadGameByFilenameAsync sets up a volume reader and hashes the volume, then uses that hash to make the three consecutive API requests to resolve hash, start session and load game data.
CloseGame resets the m_is_game_loaded flag, wipes the queue, and destroys all the game data responses.
2023-04-12 03:08:47 -04:00
LillyJadeKatrin
bd75ce6e6d
Added FetchGameData to AchievementManager
...
FetchGameData is the big one - this retrieves the logic for all the achievements, leaderboards, and rich presence, and all the relevant metadata for the game.
2023-04-12 03:08:47 -04:00
LillyJadeKatrin
7e8a770b30
Added StartRASession to AchievementManager
...
Added a call to the RetroAchievements Start Session API to AchievementManager. This is primarily for client-side activation, so it doesn't return much of value, aside from its success/error information, but I'm storing the return structure in case this changes in the future.
2023-04-12 03:08:47 -04:00
LillyJadeKatrin
67ab4d2473
Added ResolveHash to AchievementManager
...
Added the ResolveHash method to AchievementManager. This is a blocking function to send a hash string to the RetroAchievements server to verify it and get a game ID back.
2023-04-12 03:08:47 -04:00
Admiral H. Curtiss
31d2dedcb1
Merge pull request #11749 from lioncash/copy
...
NetPlayServer: Prevent unnecessary copies in GetInterfaceSet()
2023-04-11 22:09:56 +02:00
Lioncash
09e11b8067
Common: Rename ENetUtil.cpp/.h to ENet.cpp/.h
2023-04-11 11:48:46 -04:00
Lioncash
81493ee910
NetPlayServer: Prevent unnecessary copies in GetInterfaceSet()
...
This was previously copying each pair out of the vector returned by
GetInterfaceListInternal() when we just need to emplace the first entry
of each pair.
2023-04-11 09:17:03 -04:00
Lioncash
64ce2012e3
Common/ENetUtil: Move interface into Common namespace
...
Rather than just being under a separate ENetUtil namespace, we can unify
this into the common namespace as Common::ENet.
2023-04-11 09:12:04 -04:00
Léo Lam
e225ca87a9
Merge pull request #11722 from noahpistilli/write-dl-entry
...
IOS/Network/KD: Reload DLList on call to DownloadNowEx
2023-04-11 02:08:51 +01:00
Admiral H. Curtiss
948a548fb2
Merge pull request #11720 from Pokechu22/hookable-event-recursive-mutex
...
HookableEvent: Use std::recursive_mutex instead of std::mutex
2023-04-10 22:50:44 +02:00
Minty-Meeo
2bb619a508
Resolve [-Wstringop-overflow=]
2023-04-10 14:21:15 -05:00
Minty-Meeo
3282082599
Resolve [-Wwrite-strings]
2023-04-10 14:21:15 -05:00
Minty-Meeo
d9a49c68d9
Resolve [-Wunused-lambda-capture]
2023-04-10 14:21:15 -05:00
Minty-Meeo
1cf30055b2
Resolve [-Wsign-compare]
2023-04-10 14:21:15 -05:00
Admiral H. Curtiss
5373fcc1e7
IOS/FS: Filter files exposed to the emulated system in ReadDirectory() and GetDirectoryStats().
2023-04-10 19:50:08 +02:00
Admiral H. Curtiss
5c05155828
IOS/FS: Implement GetNandStats().
2023-04-10 19:50:08 +02:00
Admiral H. Curtiss
8295d6d415
IOS/FS: More accurate cluster calculation in GetDirectoryStats().
2023-04-10 19:50:08 +02:00
Admiral H. Curtiss
69d6be09f7
IOS/FS: GetDirectoryStats() should return an error if the given path is not a directory.
2023-04-10 19:50:08 +02:00
Admiral H. Curtiss
23843583bf
PowerPC: Refactor to class, move to System.
2023-04-09 21:48:37 +02:00
JosJuice
6b73a4772b
Merge pull request #11744 from AdmiralCurtiss/ios-di-registers
...
IOS/DI: Remove RegisterWrapper.
2023-04-09 08:55:07 +02:00
TellowKrinkle
b9595a2230
CMake: Use find_package and imported targets for Iconv
...
Fixes us forgetting to add its include directories, which could result in linking to a dylib from MacPorts while using the system's header, and failing to link because they use different function names
2023-04-08 21:43:03 -05:00
Admiral H. Curtiss
fe4aadc575
IOS/DI: Remove RegisterWrapper.
2023-04-09 04:20:46 +02:00
Sketch
d11c8075e7
Reload DLList on call to KDDownload
2023-04-08 19:47:11 -04:00
Pokechu22
8b0bd31e72
OGL: Use GL_OES_texture_storage_multisample_2d_array when supported
...
See https://bugs.dolphin-emu.org/issues/13198
2023-04-08 15:32:27 -07:00
Pokechu22
3f143d1bc9
OGL: Only specify precision for sampler2DMSArray when it is defined
...
See https://bugs.dolphin-emu.org/issues/13198
2023-04-08 15:32:27 -07:00
Pokechu22
53beda526b
OGL: Remove bSupports2DTextureStorageMultisample and bSupports3DTextureStorageMultisample
...
bSupports2DTextureStorageMultisample is completely unused, while bSupports3DTextureStorageMultisample is practically unused. In the past, these were checked and fell back to sampler2DMS instead of sampler2DMSArray on GLES 3.1, but this path was removed in f039149198
and Dolphin always uses array textures now.
2023-04-08 15:32:27 -07:00
Pokechu22
c68d484a65
OGL: Convert SupportedESPointSize to an enum class
2023-04-08 15:32:27 -07:00
Admiral H. Curtiss
79b8e136b7
Merge pull request #11740 from Pokechu22/interface-pane-mouse-lock-visibility
...
DolphinQt: Fix mouse lock checkbox appearing when it shouldn't
2023-04-08 22:59:31 +02:00
Robin Kertels
1596b13743
Android: Give Debug and Benchmark builds unique names
...
on the launcher and for the DocumentsProvider
2023-04-08 15:56:44 +02:00
Admiral H. Curtiss
d5b811dd7f
Merge pull request #11738 from malleoz/malleo/tas_input_latency
...
DolphinQt: Prevent MemoryViewWidget updates when hidden
2023-04-08 13:46:56 +02:00
iwubcode
e101f7f6ae
VideoCommon: refactor GetTexture into a separate function for creation, separating the custom texture data path from the game's texture data path
2023-04-08 02:54:00 -05:00
Pokechu22
02cd8b6363
DolphinQt: Fix mouse lock checkbox appearing when it shouldn't
...
See https://bugs.dolphin-emu.org/issues/13232 ; this was introduced in 7dde0c3c31
. Apparently, providing a parent for a widget that is not visible makes your new widget visible when the parent is later made visible, in addition to managing the deletion of the widget; the documentation does not specify this (only that if the parent is visible you need to explicitly show it).
2023-04-07 22:33:40 -07:00
TellowKrinkle
ed177bdbd7
VideoBackends:Metal: Use max pixel samplers constant
2023-04-08 02:12:31 +02:00
OatmealDome
72d08f6c80
InputCommon: Remove OSX (IOKit) input backend
2023-04-07 15:40:14 -04:00
sowens99
44e3993f2f
DolphinQt: Prevent MemoryViewWidget updates when hidden
2023-04-07 11:21:19 -04:00
Mai
aaedc2827d
Merge pull request #11735 from Pokechu22/cmake-no-spirv-cross-on-linux
...
CMake: Don't include SPIRV-Cross except on Windows and macOS
2023-04-06 23:11:14 -04:00
Mai
5686c614ec
Merge pull request #11717 from AdmiralCurtiss/ppcstate-rest
...
Replace most remaining global ppcState references.
2023-04-06 22:35:32 -04:00
Mai
74da38916e
Merge pull request #11729 from AdmiralCurtiss/redundant-mov
...
Jit64: Fix possibly redundant MOV in ABI_CallFunctionPR().
2023-04-06 21:42:28 -04:00
Mai
8b9c1bff0b
Merge pull request #11731 from Pokechu22/typeutils-cc0
...
Common: Relicense TypeUtils to CC0
2023-04-06 21:41:56 -04:00
Pokechu22
56fcc97f6d
CMake: Check `WIN32` instead of `CMAKE_SYSTEM_NAME STREQUAL Windows`
2023-04-06 18:37:45 -07:00
Minty-Meeo
1312624e05
Resolve [-Wshadow]
2023-04-06 19:25:26 -05:00
sowens99
cd79207853
DolphinQt: StickWidget and IRWidget check for changed x/y before signaling change
2023-04-06 01:54:20 -04:00
Pokechu22
b08d259d5c
Common: Relicense TypeUtils to CC0
...
I am the sole contributor (apart from e149ad4f0a
which only changed the license header).
2023-04-05 19:01:11 -07:00
Admiral H. Curtiss
62de9c593b
UnitTests: Avoid ppcState global.
2023-04-05 20:09:32 +02:00
Admiral H. Curtiss
2d1f661118
DolphinQt: Avoid ppcState global.
2023-04-05 20:09:32 +02:00
Admiral H. Curtiss
192d8b6e40
VideoCommon/CommandProcessor: Pass System to HandleUnknownOpcode().
2023-04-05 20:09:32 +02:00
Admiral H. Curtiss
e5941428d1
PowerPC/PPCTables: Pass instruction address to GetOpInfo().
2023-04-05 20:09:32 +02:00
Admiral H. Curtiss
6018daa3fa
PowerPC/PPCCache: Access PowerPCState through System.
2023-04-05 20:09:32 +02:00
Admiral H. Curtiss
aec3a882d7
PowerPC/JitInterface: Access PowerPCState through System.
2023-04-05 20:09:31 +02:00
Admiral H. Curtiss
18f8ae37ab
PowerPC/Expression: Pass System to EvaluateCondition().
2023-04-05 20:09:31 +02:00
Admiral H. Curtiss
0a88c2329a
Merge pull request #11715 from JosJuice/dcbx-order
...
Jit: Change argument order for InvalidateICacheLine(s)FromJIT
2023-04-05 20:06:26 +02:00
Admiral H. Curtiss
2ac7b5a523
Jit64: Fix possibly redundant MOV in ABI_CallFunctionPR().
2023-04-05 20:00:37 +02:00
Mai
25fba7247e
Merge pull request #11726 from mackal/dolphinqt-memory-leaks
...
DolphinQt: Fix memory leaks
2023-04-05 04:18:32 -04:00
Pokechu22
c55e08ff73
Jit64: Attempt to fix updating stores with an immediate value
...
See https://bugs.dolphin-emu.org/issues/13144
2023-04-04 23:30:40 -07:00
Pokechu22
497e938c8c
Jit_LoadStoreFloating: Minor tidying
...
The inst.SIMM_16 change is for readability (though it also fixes a warning about potentially unintended uses of `||`).
The fallback change is because `b` is only meaningful for indexed instructions; this could theoretically lead to unintended fallbacks (but it seems unlikely).
2023-04-04 23:04:41 -07:00
OatmealDome
2995b5e061
Merge pull request #11667 from TellowKrinkle/DontSucceedOnLinkFail
...
CMake: Use generator expressions for codesign targets
2023-04-05 05:35:58 +02:00
Michael Cook (mackal)
f424e7815a
DolphinQt: Fix memory leaks in MemoryWidget
...
QMenuBar::addMenu does not take ownership of the QMenu, setting their
parent allows them to be cleaned up
2023-04-04 16:10:31 -04:00
Michael Cook (mackal)
7dde0c3c31
DolphinQt: non-Windows builds leak in InterfacePane
...
The m_checkbox_lock_mouse QCheckBox was only conditionally being added
to the layout, leaving it unmanaged and leaking
Setting the parent will allow it to be managed.
2023-04-04 16:07:06 -04:00
Michael Cook (mackal)
e511718fbc
DolphinQt: Fix leak in LogConfigWidget
...
The m_verbosity_debug button was only conditionally being added as
widget, this was done in order to hide the object, but this left it
unmanaged.
Unconditionally adding it to the layout and controlling it's visibility
will resolve these issues
2023-04-04 16:05:23 -04:00
Pierre Bourdon
d8fabd37fb
Merge pull request #11417 from K0bin/vk-submit-thread-cleanup
...
VideoBackends:Vulkan: Clean up submission thread using WorkQueueThread
2023-04-04 22:02:39 +02:00
Pierre Bourdon
c71a4c2751
Merge pull request #11719 from AdmiralCurtiss/enet-update
...
Update ENet to 8ae0e85298fafdb20777b4eb4241218f52f775b0
2023-04-04 22:00:45 +02:00
Michael Cook (mackal)
2dca24229b
DolphinQt: Fix memory lkea in FilesystemWidget
...
QTreeView::setModel doesn't transfer ownership of the object.
Setting the parent resolves this
2023-04-04 15:59:45 -04:00
Pierre Bourdon
b63b574a3f
Merge pull request #11669 from LillyJadeKatrin/retroachievements-rcheevos-integration
...
Retroachievements rcheevos integration
2023-04-04 12:34:20 +02:00
LillyJadeKatrin
84b3df0af2
Added Achievement Manager with Login
...
Added AchievementManager class. Upon startup (currently only in DolphinQt), logs into RetroAchievements with the login credentials stored in achievements.ini.
Co-authored-by: AdmiralCurtiss <AdmiralCurtiss@users.noreply.github.com>
2023-04-03 21:17:44 -04:00
LillyJadeKatrin
07d2f3d305
Added Initial Achievement Settings
...
Added AchievementSettings in Config with RA_INTEGRATION_ENABLED, RA_USERNAME, and RA_API_TOKEN. Includes code to load and store from Achievements.ini file in config folder.
2023-04-03 21:17:44 -04:00
Michael Cook (mackal)
241a739dc2
DolphinQt: RenderWidget fix heap-use-after-free
...
The QByteArray returned by QString::toUtf8() was being freed so the char
pointer was pointing to freed memory.
Found via ASan, didn't notice any issues during normal runtime.
This was triggered after hitting a key combo with alt (ex. toggle
fullscreen) probably happens with others
2023-04-03 10:43:49 -04:00
Mai
655fca3efe
Merge pull request #11712 from AdmiralCurtiss/nand-import-bounds
...
NANDImporter: Check data bounds.
2023-04-03 08:29:57 -04:00
Pokechu22
9e0755a598
HookableEvent: Use std::recursive_mutex instead of std::mutex
...
This fixes a crash when recording fifologs, as the mutex is acquired when BPWritten calls AfterFrameEvent::Trigger, but then acquired again when FifoRecorder::EndFrame calls m_end_of_frame_event.reset(). std::mutex does not allow calling lock() if the thread already owns the mutex, while std::recursive_mutex does allow this.
This is a regression from #11522 (which introduced the HookableEvent system).
2023-04-02 15:51:21 -07:00
Admiral H. Curtiss
1e1041f299
NetPlay: Limit ENet's MTU to 1392 as a workaround for dropped packets over VPN via WireGuard, see https://github.com/lsalzman/enet/issues/132
2023-04-02 17:23:10 +02:00
LillyJadeKatrin
f3114b59f4
Added USE_RETRO_ACHIEVEMENTS compiler flag
...
Added a flag to VS and CMake for enabling RetroAchievements integration.
2023-04-02 08:28:25 -04:00
LillyJadeKatrin
2836feac71
Added rcheevos to Externals
...
Adds the rcheevos library from RetroAchievements to the Dolphin Externals as a submodule. Change was verified to import correctly and build both via Visual Studio and via cmake ninja.
2023-04-02 08:28:23 -04:00
JosJuice
6089310c80
Add Finnish translation
...
A lot of progress has been made on the Finnish translation over on
Transifex recently. Let's add it.
2023-04-02 11:33:42 +02:00
Admiral H. Curtiss
c97c80d1cb
NANDImporter: Check data bounds.
2023-04-02 03:45:34 +02:00
Admiral H. Curtiss
aaeaa9c6b6
Merge pull request #11714 from sepalani/check-wii-save-path
...
GameList: Check Wii save path
2023-04-02 02:44:29 +02:00
JosJuice
450ca0b69e
Merge pull request #11700 from AdmiralCurtiss/mmu-class
...
PowerPC/MMU: Refactor to class, move to System.
2023-04-01 18:02:04 +02:00
Admiral H. Curtiss
e24e52af3c
Jit64: Use utility function for function calls in dcbx.
...
We have these for a reason. I think this also fixes a theoretical
problem when `ABI_PARAM1 == loop_counter` where the first MOV destroys
the second's value; I'm not sure if this can actually happen in practice
though.
2023-04-01 15:30:03 +02:00
JosJuice
1bf593f65a
Jit: Change argument order for InvalidateICacheLine(s)FromJIT
2023-04-01 14:34:30 +02:00
Sepalani
9ee564dde3
GameList: Check Wii save path
...
Make the behaviour consistent with GC save
2023-04-01 16:23:37 +04:00
Pierre Bourdon
7e9a63b987
Merge pull request #11704 from AdmiralCurtiss/more-log
...
Netplay: More logging before game start.
2023-03-30 19:26:49 +02:00
Admiral H. Curtiss
0ccf24b0c5
Netplay: More logging for server and client thread main loops.
2023-03-30 16:57:39 +02:00
Markus Wick
50a45bd614
Merge pull request #11673 from K0bin/vertex-loader-micro-opt
...
Vertex Loader Microoptimization
2023-03-30 11:05:02 +02:00
Admiral H. Curtiss
bfe0940bbd
Netplay: More logging before game start.
2023-03-30 00:02:30 +02:00
Charles Lombardo
15be899580
Merge pull request #11689 from K0bin/android-open-user-folder
...
Android: Make button in the settings open user folder
2023-03-29 10:53:48 -07:00
Pierre Bourdon
d62838a2f4
Merge pull request #11690 from degasus/asciiart
...
Shaders: Reintroduce the old Ascii-Art shader.
2023-03-28 11:17:27 +02:00
Admiral H. Curtiss
8dabd1a025
PowerPC/MMU: Refactor to class, move to System.
2023-03-28 03:47:51 +02:00
Mai
98fad9004b
Merge pull request #11698 from AdmiralCurtiss/mmu-comments
...
PowerPC/MMU: Clean up old comments.
2023-03-27 10:32:19 -04:00
Mai
c096ee64f2
Merge pull request #11696 from AdmiralCurtiss/jit-interface-class
...
JitInterface: Refactor to class, move to System.
2023-03-27 10:31:53 -04:00
Robin Kertels
ee563189fd
Android: Adjust user data text to match DocumentProvider
2023-03-26 20:32:43 +02:00
Admiral H. Curtiss
d7fabf37d6
PowerPC/MMU: Clean up old comments.
2023-03-26 15:19:48 +02:00
MayImilae
0d74a8561a
Remove GCI Folder Path from the Wrote to OSD Message
...
Follow up to PR11470. Forgot to do GCI as well. Oops.
2023-03-26 06:19:17 -07:00
Admiral H. Curtiss
7f50c070b2
JitInterface: Convert m_jit to unique_ptr.
2023-03-26 14:38:07 +02:00
Admiral H. Curtiss
9217a9eba4
JitInterface: Refactor to class, move to System.
2023-03-26 14:38:07 +02:00
Admiral H. Curtiss
1885ddcde2
JitArm64: Avoid System::GetInstance() and ppcState.
2023-03-25 15:47:30 +01:00
Admiral H. Curtiss
6b44947488
Merge pull request #11677 from AdmiralCurtiss/deglobal-jit
...
Avoid System::GetInstance() and ppcState global in Jit64 and CachedInterpreter.
2023-03-25 14:52:46 +01:00
Admiral H. Curtiss
fc394bdbdb
Jit64: Avoid System::GetInstance() and ppcState.
2023-03-25 02:37:10 +01:00
Admiral H. Curtiss
dfc14db313
CachedInterpreter: Avoid System::GetInstance() and ppcState.
2023-03-25 02:37:10 +01:00
Admiral H. Curtiss
9c0226b7e3
JitBase: Avoid System::GetInstance() and ppcState.
2023-03-25 02:37:00 +01:00
Admiral H. Curtiss
b568cf5268
Interpreter: Remove remaining System::GetInstance() and global ppcState.
2023-03-24 21:58:41 +01:00
degasus
196c684ac1
Vulkan: Enable subgroupShuffle.
...
It is used as workaround for the missing subgroupBroadcastDynamicId flag on SPIR-V < 1.5.
2023-03-24 21:53:23 +01:00
JosJuice
7de01597c6
Merge pull request #11686 from t895/index-fix
...
Android: Ignore input from invalid pointer identifier
2023-03-24 17:57:19 +01:00
Admiral H. Curtiss
2edb69f89f
Merge pull request #11682 from lioncash/queue
...
Common: Move FixedSizeQueue into Common namespace
2023-03-24 12:55:10 +01:00
Robin Kertels
43d346aba4
Android: Open DocumentProvider directly when tapping the File Manager button
2023-03-24 00:33:42 +01:00
Charles Lombardo
df806125b9
Android: Ignore input from invalid pointer identifier
2023-03-22 21:44:37 -04:00
Pierre Bourdon
eb7d7836fd
Merge pull request #11685 from shuffle2/updater-test
...
test-updater.py: include space and unicode in paths to test
2023-03-22 23:40:24 +01:00
Shawn Hoffman
fdc1626308
test-updater.py: include space and unicode in paths to test
2023-03-22 11:08:58 -07:00
Shawn Hoffman
3961afdbb9
windows: temporarily hardcode VCToolsVersion to 14.34.31931.0
...
this should be reverted after next beta is built
see https://bugs.dolphin-emu.org/issues/13206
2023-03-22 10:42:32 -07:00
Lioncash
0f326c6067
Common: Move FixedSizeQueue into Common namespace
...
Gets this out of the global namespace.
2023-03-22 01:23:15 -04:00
Charles Lombardo
ce66d5875f
Android: Fix long press action for leanback game cards
2023-03-21 19:12:28 -04:00
Charles Lombardo
cf0706c239
Android: Remove deprecated use of launchWhenStarted/Resumed
2023-03-21 18:53:48 -04:00
Lioncash
0888c93d48
Common: Move FPU-related helpers into Common namespace
...
Makes these utilities' namespace consistent with the majority of the
Common library.
2023-03-21 10:58:13 -04:00
Pokechu22
df451b3d9e
msvc: Nest implot under Externals
2023-03-20 22:27:39 -07:00
Admiral H. Curtiss
8f16fd60dd
JitArm64: Use 64-bit register for pointer when falling back to interpreter.
2023-03-21 02:46:29 +01:00
Robin Kertels
93fce0e4b6
VideoCommon:VertexManagerBase: Only calculate remaining indices once
...
Before, both of those were calculated 3 times due to the ASSERTs.
2023-03-20 20:59:50 +01:00
Robin Kertels
408b09da31
VideoCommon:VertexShaderManager: Inline SetVertexFormat & UpdateValue/Offset
2023-03-20 20:59:38 +01:00
Mai
9807961ff2
Merge pull request #11671 from AdmiralCurtiss/deglobal-interpreter
...
Deglobalize Interpreter
2023-03-20 15:55:14 -04:00
Robin Kertels
c1be9628fc
VideoBackends:Vulkan: Use WorkQueueThread
2023-03-20 16:40:32 +01:00
Robin Kertels
9d422d14d5
WorkQueueThread: Fix WaitForCompletion
2023-03-20 16:31:40 +01:00
Robin Kertels
9186050daa
VideoBackends:Vulkan: Clean up submission thread BlockingLoop usage
2023-03-20 16:23:35 +01:00
Robin Kertels
7703fef3a4
VideoCommon:VertexLoaderManager: Only update vertex format in shader manager if necessary.
2023-03-20 00:41:16 +01:00
JosJuice
002a96adb0
Merge pull request #11662 from t895/kotlin-settings
...
Android: Convert Settings to Kotlin
2023-03-19 17:15:22 +01:00
Admiral H. Curtiss
454d2fd9ab
Interpreter: Avoid ppcState global (Interpreter_SystemRegisters.cpp).
2023-03-19 03:11:22 +01:00
Admiral H. Curtiss
c582aad0c7
Interpreter: Avoid ppcState global (Interpreter_Paired.cpp).
2023-03-19 03:11:18 +01:00
Admiral H. Curtiss
514a7af473
Interpreter: Avoid ppcState global (Interpreter_LoadStorePaired.cpp).
2023-03-19 03:11:13 +01:00
Admiral H. Curtiss
9af8410e4c
Interpreter: Avoid ppcState global (Interpreter_LoadStore.cpp).
2023-03-19 03:11:09 +01:00
Admiral H. Curtiss
8b13349886
Interpreter: Avoid ppcState global (Interpreter_Integer.cpp).
2023-03-19 03:11:05 +01:00
Admiral H. Curtiss
2ce86a890a
Interpreter: Avoid ppcState global (Interpreter_FloatingPoint.cpp).
2023-03-19 03:11:01 +01:00
Admiral H. Curtiss
d4ca591e02
Interpreter: Avoid ppcState global (Interpreter_Branch.cpp).
2023-03-19 03:10:56 +01:00
Admiral H. Curtiss
68ab623764
Interpreter: Avoid ppcState global (Interpreter.cpp).
2023-03-19 03:10:42 +01:00
Admiral H. Curtiss
3d67c11b91
Interpreter: Move global state into class, move instance to System.
2023-03-19 03:05:20 +01:00
Admiral H. Curtiss
919182eda2
Interpreter: Pass Interpreter to CPU instruction functions.
2023-03-19 03:05:11 +01:00
Admiral H. Curtiss
a4d3342419
Merge pull request #11665 from JosJuice/fix-movie-wii-save
...
Core: Fix starting movie recording with existing Wii save
2023-03-19 01:46:21 +01:00
Admiral H. Curtiss
fb7a371ac0
Merge pull request #11666 from AdmiralCurtiss/updater-spaces
...
WinUpdater: Quote path for args when relaunching Dolphin.
2023-03-18 18:32:35 +01:00
Pierre Bourdon
04915d6749
Merge pull request #11670 from JosJuice/android-open-mode
...
Android: Translate C++ "w" to ParcelFileDescriptor "wt"
2023-03-18 18:20:17 +01:00
JosJuice
8e363c0995
Android: Translate C++ "w" to ParcelFileDescriptor "wt"
...
Previously we were translating "w" to "w", which unlike in C++ doesn't
truncate. See https://issuetracker.google.com/issues/180526528 , and for
reference, https://en.cppreference.com/w/cpp/io/c/fopen and
https://en.cppreference.com/w/cpp/io/basic_filebuf/open .
This issue was brought to my attention by the recently published issue
CVE-2023-21036 in the screenshot editing tool on Pixel phones. I'm not
aware of any code in Dolphin that actually uses "w" with an existing
file on Android (when we ask the user for a location to save to using
SAF, a new file is always created), but still, best to fix this.
2023-03-18 13:44:01 +01:00
Admiral H. Curtiss
33d0ec97e9
WinUpdater: Quote path for args when relaunching Dolphin.
2023-03-17 12:48:39 +01:00
TellowKrinkle
d037c60caf
CMake: Use proper dependency tracking command for storyboard compiling
2023-03-17 01:28:33 -05:00
TellowKrinkle
66936f2087
CMake: Use generator expressions to get codesigning targets
...
Also works around a bug where CMake's ninja generator doesn't properly handle ||'s on POST_BUILD commands, making the || apply to the whole build like `<link> && custom0 || custom1`
2023-03-17 01:28:16 -05:00
Pokechu22
4dd658f4da
Remove PPCTables::UsesFPU
...
We don't have getters for other flags, so it's not useful to have that.
2023-03-16 18:39:41 -07:00
Pokechu22
164ea57790
Split PPCTables from Interpreter_Tables
...
This also allows use of constexpr in both places. Some additional work was needed in PPCTables due to mutable data associated with each opcode.
2023-03-16 18:36:25 -07:00
Pokechu22
cd627d1232
PPCTables: Fix OPLOG system
...
Since OPLOG is defined in PPCTables.cpp only, it isn't visible elsewhere. This broke in 3ede866c37
.
2023-03-16 18:36:25 -07:00
Pokechu22
34f39ee22e
JitArm64_Tables: Use C++20 features
2023-03-16 18:36:25 -07:00
Pokechu22
ec7432ef36
Jit64_Tables: Use C++20 features
2023-03-16 18:36:25 -07:00
Pokechu22
14a93d24e1
Common: Add constexpr Fill function
2023-03-16 18:36:25 -07:00
JosJuice
d179acef38
Core: Refactor InitializeDeterministicWiiSaves
...
Some simple deduplication.
2023-03-16 22:49:46 +01:00
JosJuice
9e7409e71e
Core: Fix starting movie recording with existing Wii save
...
A change made in 0d095b4
didn't take into account that the movie system
doesn't set sync_titles.
2023-03-16 22:45:40 +01:00
JosJuice
6b545eaada
Merge pull request #11659 from JosJuice/android-after-dirinit-runner-cleanup
...
Android: Clean up AfterDirectoryInitializationRunner
2023-03-16 17:12:58 +01:00
Pierre Bourdon
d623871f3e
Merge pull request #11664 from OatmealDome/macos-updater-test-mode
...
MacUI: Add stub implementation of UI::IsTestMode()
2023-03-16 15:24:49 +01:00
OatmealDome
bbe2bd5fec
MacUI: Add stub implementation of UI::IsTestMode()
2023-03-16 02:44:36 -04:00
Charles Lombardo
a32d66e5ec
Android: Upgrade Kotlin to 1.8.10
2023-03-15 23:58:11 -04:00
Charles Lombardo
f06c0897ab
Android: Update gradle to 8.0
2023-03-15 23:58:11 -04:00
Charles Lombardo
de34c962d7
Android: Upgrade AGP to 7.4.2
2023-03-15 23:58:11 -04:00
Charles Lombardo
7e84285047
Android: Upgrade dependencies
...
Desugar JDK 2.0.0 -> 2.0.2
Androidx Appcompat 1.6.0 -> 1.6.1
Androidx Exif Interface 1.3.5 -> 1.3.6
Material Components 1.7.0 -> 1.8.0
Androidx recyclerview 1.2.1 -> 1.3.0
Androidx viewmodel ktx 2.5.1 -> 2.6.0
Androidx viewmodel 2.5.1 -> 2.6.0
2023-03-15 23:58:11 -04:00
Charles Lombardo
805f921b55
Android: Remove unused benchmark flags
2023-03-15 23:57:47 -04:00
Charles Lombardo
2782318b8c
Android: Update ndk version to 25.2.9519653
2023-03-15 23:57:47 -04:00
Charles Lombardo
9020b6aeb9
Android: Convert SettingsAdapter to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
673c8d9cb2
Android: Convert SettingsActivity to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
4cbbe15e77
Android: Convert SettingsFragment to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
cea882181d
Android: Convert SettingsActivityPresenter to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
3b32ff6980
Android: Convert SettingsFile to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
92f39a98d6
Android: Convert SwitchSettingViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
49e480ee53
Android: Convert SubmenuViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
760417b08f
Android: Convert SliderViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
9b79f5fa5d
Android: Convert SingleChoiceViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
917a0c2287
Android: Convert SettingViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
7b7ee13162
Android: Convert RunRunnableViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
6a08b12c9b
Android: Convert InputStringSettingViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
bc6d10e29a
Android: Convert HeaderViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
789493b722
Android: Convert HeaderHyperLinkViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
220cdafbaa
Android: Convert FilePickerViewHolder to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
f0304d80ef
Android: Convert SettingsViewModel to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
508e56e2bf
Android: Convert SettingsFragmentView to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
656d91cd18
Android: Convert SettingsFragmentPresenter to Kotlin
2023-03-15 17:35:48 -04:00
Charles Lombardo
c78cde2e18
Android: Convert SettingsActivityView to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
dc77ee140d
Android: Convert MenuTag to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
2af8efdd72
Android: Convert SwitchSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
ab11b44938
Android: Convert SubmenuSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
065c80fb4d
Android: Convert SliderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
3c6bb9e0c9
Android: Convert SingleChoiceSettingDynamicDescriptions to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
d51f504629
Android: Convert SingleChoiceSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
1fc9f03b27
Android: Convert RunRunnable to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
62679bacc1
Android: Convert PercentSliderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
72be338d56
Android: Convert LogSwitchSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
56c33890b9
Android: Convert InvertedSwitchSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
2369977e14
Android: Convert IntSliderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
826e849a7b
Android: Convert InputStringSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
fc97c4d35a
Android: Convert HyperLinkHeaderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
f95fd7788e
Android: Convert HeaderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
1e2e9e004b
Android: Convert FloatSliderSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
f7ad065408
Android: Convert FilePicker to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
1553477c09
Android: Convert StringSetting to Kotlin
2023-03-15 17:35:34 -04:00
Charles Lombardo
2c560e05a8
Android: Convert Settings to Kotlin
2023-03-15 17:35:21 -04:00
Charles Lombardo
dee85cead8
Android: Convert PostProcessing to Kotlin
2023-03-15 17:35:21 -04:00
Charles Lombardo
42f4fb815f
Android: Convert NativeConfig to Kotlin
2023-03-15 17:35:21 -04:00
Charles Lombardo
7c59640f8e
Android: Convert IntSetting to Kotlin
2023-03-15 17:35:21 -04:00
Charles Lombardo
46e68171b9
Android: Convert FloatSetting to Kotlin
2023-03-15 17:34:49 -04:00
Charles Lombardo
3ac72855e3
Android: Convert BooleanSetting to Kotlin
2023-03-15 17:34:21 -04:00
Charles Lombardo
84c23c14db
Android: Convert AdHocStringSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
a8f3d4291a
Android: Convert AdHocBooleanSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
f1028b4652
Android: Convert AbstractStringSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
32f9e48257
Android: Convert AbstractIntSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
baeeaa2a43
Android: Convert AbstractFloatSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
5bc2b46983
Android: Convert AbstractBooleanSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
21e0b5b9d9
Android: Convert AbstractSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
43fa5cf5e4
Android: Convert SettingsItem to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
6dc6720250
Android: Convert StringSingleChoiceSetting to Kotlin
2023-03-15 15:49:37 -04:00
Charles Lombardo
98ab893be7
Android: Create extension functions for serializables
...
Getting serializables without explicitly stating the type is deprecated in Android 13. However we still need a way to get a serializable in versions below that. Now with these we can avoid repeating the same if block.
2023-03-15 14:26:37 -04:00
Pierre Bourdon
91fca0783e
Merge pull request #11647 from AdmiralCurtiss/perfquery-inconsistency
...
Fix PerfQuery inconsistencies across backends.
2023-03-15 15:20:11 +01:00
JosJuice
fe8be906f3
Android: Use LifecycleOwner instead of subtype
2023-03-14 23:03:13 +01:00
JosJuice
846f5f6671
Android: Clean up outdated comment in AfterDirectoryInitializationRunner
2023-03-14 23:03:13 +01:00
Mai
4281606838
Merge pull request #11641 from JosJuice/android-remove-old-config
...
Android: Remove support for the old config system
2023-03-14 15:48:04 -04:00
Pierre Bourdon
e83b6e19ab
Merge pull request #11655 from AdmiralCurtiss/dtk-heap
...
HW/DVDInterface: Avoid heap allocation in DTK callback.
2023-03-14 13:45:41 +01:00
Admiral H. Curtiss
4c21cdd0e6
HW/DVDInterface: Do DTK math in blocks instead of in samples.
2023-03-14 13:19:44 +01:00
Pierre Bourdon
aceafc9d26
Merge pull request #11652 from t895/header-padding
...
Android: Make header padding appear even
2023-03-14 13:03:19 +01:00
Admiral H. Curtiss
66b6a60afe
HW/DVDInterface: Avoid heap allocation in DTK callback.
2023-03-14 10:58:03 +01:00
Pierre Bourdon
3783bedc25
Merge pull request #11635 from Dentomologist/wiimote_fix_disconnection_deadlock
...
ControllerInterface: Fix deadlock when Wii Remote disconnects
2023-03-14 02:41:36 +01:00
Admiral H. Curtiss
aac9647ba2
Divide by MSAA for PerfQuery in all backends.
2023-03-14 02:13:25 +01:00
Admiral H. Curtiss
ddd2b598da
Return quarter value for PerfQuery in all backends.
2023-03-14 02:08:20 +01:00
Pierre Bourdon
970ddf0ea0
Merge pull request #11651 from JosJuice/android-profile-off-by-one
...
Android: Fix per-game profile setting off-by-one
2023-03-14 02:02:00 +01:00
Admiral H. Curtiss
43a5d506c8
Merge pull request #11644 from deReeperJosh/trapteamaudio
...
Skylander Portal: Play Trap Team Audio
2023-03-14 01:29:20 +01:00
Admiral H. Curtiss
26605c0184
Merge pull request #11649 from Pokechu22/tas-controller-input-update-widgets
...
DolphinQt: Fix TAS widgets not updating with enable controller input
2023-03-14 01:21:17 +01:00
Pierre Bourdon
5c962ea71f
Merge pull request #11650 from AdmiralCurtiss/more-system
...
More passing of System instead of using the singleton.
2023-03-13 23:36:17 +01:00
Pierre Bourdon
936c05e600
Merge pull request #11599 from shuffle2/vs17.5
...
vs: update to 17.5
2023-03-13 20:43:48 +01:00
Charles Lombardo
4f610bb354
Android: Make header padding appear even
2023-03-13 15:27:09 -04:00
JosJuice
5818685911
Android: Fix per-game profile setting off-by-one
2023-03-13 18:30:55 +01:00
Admiral H. Curtiss
3006c23c85
Core/CPUThreadGuard: Fetch System from Guard.
2023-03-13 18:13:20 +01:00
Admiral H. Curtiss
31d33d0efd
HW/ProcessorInterface: Store reference to System in class.
2023-03-13 18:13:20 +01:00
Admiral H. Curtiss
ba852a7812
HW/Memmap: Store reference to System in MemoryManager.
2023-03-13 18:13:20 +01:00
Admiral H. Curtiss
026b6a3e0f
HW: Pass System to functions.
2023-03-13 18:13:20 +01:00
Mai
137b9d1da1
Merge pull request #11646 from AdmiralCurtiss/si-class
...
HW/SerialInterface: Refactor to class.
2023-03-13 13:09:51 -04:00
Pierre Bourdon
a6b2655631
Merge pull request #11636 from shuffle2/updater-test
...
Add test for Updater
2023-03-13 15:47:37 +01:00
Pokechu22
3f6b931150
DolphinQt: Fix TAS widgets not updating with enable controller input
...
This regressed in 0300b44d23
. Specifically, the sliders and the stick/IR widgets did not update, but the spin boxes did update.
2023-03-12 17:58:48 -07:00
Joshua de Reeper
f27e8216a5
Skylander Portal: Play Trap Team Audio
...
Asserts and length handling
2023-03-13 13:01:48 +13:00
Admiral H. Curtiss
bf2f901a99
HW/SerialInterface: Refactor to class.
2023-03-12 16:08:56 +01:00
Robin Kertels
784ce78eaf
Android: Use $applicationId for DocmentProvider authority
...
Fixes side by side installation of debug, benchmark and release builds.
2023-03-12 15:28:21 +01:00
Admiral H. Curtiss
d371b17f37
HW/SerialInterface: Pass System to ISIDevice.
2023-03-12 14:19:38 +01:00
Mai
ab05dfc263
Merge pull request #11642 from shuffle2/winupdater-fail
...
winupdater: improve wording of UI::Error
2023-03-12 04:11:16 -04:00
Mai
ee28d332b0
Merge pull request #11640 from AdmiralCurtiss/vi-class
...
HW/VideoInterface: Refactor to class.
2023-03-11 18:00:24 -05:00
Shawn Hoffman
ab3da5e4ce
winupdater: improve wording of UI::Error
2023-03-11 13:25:38 -08:00
Shawn Hoffman
06cb4ffa64
winupdater: fix CR getting into parsed VCToolsUpdateURL
2023-03-11 12:58:33 -08:00
Shawn Hoffman
0a8725e4a9
updater: add test for update flow
...
currently windows-only
2023-03-11 12:58:33 -08:00
Shawn Hoffman
de0bc06856
updater: flush log after each write
2023-03-11 12:58:33 -08:00
JosJuice
804b94ee9e
Merge pull request #11524 from K0bin/document-provider
...
Android: Implement DocumentProvider
2023-03-11 19:24:19 +01:00
JosJuice
08334015f9
Android: Remove SettingsActivityView parameters from Settings
...
No longer used for anything.
2023-03-11 18:49:43 +01:00
JosJuice
99600ef781
Android: Rework the "global" settings functions
...
getXGlobal() is now identical to getX(), and setXGlobal(int, X) is now
identical to setX(int, X) in the cases where setX(int, X) exists.
We can remove/rename them.
2023-03-11 18:49:43 +01:00
JosJuice
58fc347f8d
Android: Don't require Settings object for reading a setting
...
Made unnecessary by the previous commit.
2023-03-11 18:49:43 +01:00
JosJuice
68fd133057
Android: Remove support for the old config system
...
All settings that we care about from an Android perspective are now
supported by the new config system, so we can remove all the Android code
for the old config system. This should have no impact on users.
2023-03-11 17:51:59 +01:00
JosJuice
53e7090f55
Migrate game INI profile setting to new config system
2023-03-11 17:51:58 +01:00
Admiral H. Curtiss
069280ddc6
HW/VideoInterface: Refactor to class.
2023-03-11 12:50:35 +01:00
Admiral H. Curtiss
2102e64299
HW/VideoInterface: Savestate members individually.
2023-03-11 12:48:02 +01:00
JosJuice
62ff2f1030
Merge pull request #11385 from JosJuice/android-input-overhaul
...
Android input overhaul
2023-03-11 12:37:44 +01:00
Admiral H. Curtiss
84542d915d
HW/MemoryInterface: Refactor to class.
2023-03-11 00:57:16 +01:00
Admiral H. Curtiss
bf95d4012f
HW/EXI: Refactor ExpansionInterface to class.
2023-03-11 00:56:37 +01:00
Mai
e4df388128
Merge pull request #11638 from JosJuice/tas-input-motionplus
...
DolphinQt: Add MotionPlus support to TAS input
2023-03-10 16:54:35 -05:00
Admiral H. Curtiss
d31733ce64
HW/DVD: Rename DVDThreadManager to DVDThread.
2023-03-10 20:22:29 +01:00
Admiral H. Curtiss
25e883280a
HW/DVD: Merge DVDThread namespace into DVD.
2023-03-10 20:20:19 +01:00
JosJuice
4d34f86121
DolphinQt: Add MotionPlus support to TAS input
...
Will manually controlling both an accelerometer and a gyroscope at the
same time be reasonable to do? No idea. Was this easy to implement
thanks to the input override system? Yes.
Fixes https://bugs.dolphin-emu.org/issues/12443 .
2023-03-10 19:36:17 +01:00
Admiral H. Curtiss
d26a540253
HW/DVD: Rename DVDInterfaceManager to DVDInterface.
2023-03-10 18:37:46 +01:00
Admiral H. Curtiss
ee35103ed9
HW/DVD: Rename DVDInterface namespace to DVD.
2023-03-10 18:37:18 +01:00
Admiral H. Curtiss
dca8e9dc1e
HW/DVDThread: Refactor to class.
2023-03-10 18:12:59 +01:00
Admiral H. Curtiss
eb25c46a91
HW/DVDInterface: Refactor to class.
2023-03-10 18:12:59 +01:00
Admiral H. Curtiss
929222ffbd
HW/DSP: Refactor to class.
2023-03-09 22:35:29 +01:00
Mai
40ff9b25b7
Merge pull request #11633 from AdmiralCurtiss/ai-class
...
HW/AudioInterface: Refactor to class.
2023-03-09 11:59:47 -05:00
Admiral H. Curtiss
1023e5dd4f
Merge pull request #11441 from JosJuice/jit64-lea-fixup
...
Jit64: Fix the offsetAddedToAddress correction
2023-03-09 16:13:25 +01:00
Admiral H. Curtiss
9ed388fc8a
Merge pull request #11557 from AdmiralCurtiss/split-file-reader
...
DiscIO: Add support for CleanRip-style split ISOs.
2023-03-09 16:13:15 +01:00
Admiral H. Curtiss
8c7997d6ca
Merge pull request #11601 from Dentomologist/bluetooth_adapter_missing_message
...
Config: Restore Bluetooth adapter missing message in Controller Settings
2023-03-09 16:10:14 +01:00
Admiral H. Curtiss
234c5dd90e
Merge pull request #11622 from JosJuice/tas-input-nonblocking
...
DolphinQt: Rework TAS input threading
2023-03-09 16:08:30 +01:00
Charles Lombardo
a6b1b2f9a5
Merge pull request #11631 from K0bin/pref-divider
...
Android: Only show divider in settings for headers
2023-03-08 23:56:39 -05:00
Admiral H. Curtiss
d638d2dcb7
HW/AudioInterface: Refactor to class.
2023-03-09 02:40:29 +01:00
Dentomologist
d6a8e6caaf
ControllerInterface: Fix deadlock when Wii Remote disconnects
...
In UpdateInput, lock m_devices_population_mutex before m_devices_mutex
to be consistent with other ControllerInterface functions. Normally the
former lock isn't needed in UpdateInput, but when a Wii Remote
disconnects it calls RemoveDevice which results in the mutexes being
locked in the wrong order.
2023-03-08 17:22:27 -08:00
Robin Kertels
13ed46a488
Android: Implement DocumentProvider
...
This allows users to access the Dolphin user directory.
2023-03-08 23:09:49 +01:00
Admiral H. Curtiss
a1c2651fee
HW/EXI: Pass System to IEXIDevice.
2023-03-08 22:51:17 +01:00
Admiral H. Curtiss
7044cff011
Core/Boot: Pass around System.
2023-03-08 22:41:43 +01:00
Admiral H. Curtiss
912cd456fb
Core: Add System parameter to CPUThreadGuard.
2023-03-08 22:41:42 +01:00
Robin Kertels
1b47144312
Android: Center list view headers
2023-03-08 18:57:19 +01:00
Robin Kertels
edde253724
Android: Only show divider in settings for headers
2023-03-08 18:57:08 +01:00
Mai
c592c94395
Merge pull request #11630 from AdmiralCurtiss/globals-cpu
...
HW/CPU: Refactor to class, move to System.
2023-03-08 11:52:30 -05:00
JosJuice
0300b44d23
DolphinQt: Rework TAS input threading, part 2 (analog inputs)
2023-03-08 17:49:03 +01:00
JosJuice
11e4d46927
DolphinQt: Remove unneeded out parameters in TASInputWindow
...
IIRC we needed this before the input override system was added.
2023-03-08 17:49:03 +01:00
JosJuice
3eac1fc284
DolphinQt: Rework TAS input threading, part 1 (buttons)
...
This gets rid of a blocking operation, improving performance and fixing
https://bugs.dolphin-emu.org/issues/12893 .
This also makes us no longer directly access the state of certain UI
elements from the CPU thread, which probably wasn't thread-safe but
doesn't seem to have caused any observable issues so far.
2023-03-08 17:49:02 +01:00
Admiral H. Curtiss
3b364c5c16
HW/CPU: Refactor to class, move to System.
2023-03-08 12:23:37 +01:00
Mai
f1e4b6a141
Merge pull request #11494 from t895/orientation-jank
...
Android: Rewrite Wii system updates in Kotlin
2023-03-08 01:42:53 -05:00
Admiral H. Curtiss
0b9002ec2a
Merge pull request #11568 from SMarioMan/socket-broadcast
...
Network/Socket: Enable broadcast permissions in socket requests
2023-03-08 00:11:44 +01:00
Charles Lombardo
75ce7a04ca
Android: Use coroutine for system updates
2023-03-07 15:45:41 -05:00
Charles Lombardo
d66d8210bf
Android: Switch to indeterminate progress bar on system update cancel
2023-03-07 15:45:41 -05:00
Charles Lombardo
917ca2273e
Android: Remove hardcoded strings from system update dialogs
2023-03-07 15:45:41 -05:00
Charles Lombardo
410aaef56e
Android: Remove orientation lock on system update dialog
2023-03-07 15:45:41 -05:00
Charles Lombardo
c0868f04a9
Android: Use Kotlin extensions for lifecycle components
2023-03-07 15:45:41 -05:00
Charles Lombardo
5eeb0a540b
Android: Convert OnlineUpdateRegionSelectDialogFragment to Kotlin
2023-03-07 15:45:41 -05:00
Charles Lombardo
0ac4fe763b
Android: Convert SystemMenuNotInstalledDialogFragment to Kotlin
2023-03-07 15:45:41 -05:00
Charles Lombardo
c8907349be
Android: Convert SystemUpdateResultFragment to Kotlin
2023-03-07 15:45:40 -05:00
Charles Lombardo
60cb886cd4
Android: Convert WiiUtils to Kotlin
2023-03-07 15:45:40 -05:00
Charles Lombardo
2b17e0334a
Android: Convert SystemUpdateViewModel to Kotlin
2023-03-07 15:45:40 -05:00
Charles Lombardo
6dfa555099
Android: Convert SystemUpdateProgressBarDialogFragment to Kotlin
2023-03-07 15:45:40 -05:00
Mai
16023ece6d
Merge pull request #11621 from deReeperJosh/skylandersfilefix
...
Skylander Portal: Clearing and Reloading fix
2023-03-07 15:24:46 -05:00
Admiral H. Curtiss
6d38dd9821
Qt/WatchWidget: Don't update if not paused.
2023-03-07 20:31:15 +01:00
JosJuice
75fb1a7edf
Android: Disable input device sensor input due to crash
2023-03-07 17:39:34 +01:00
JosJuice
1788a797e7
Android: Add "more settings" button to overlay control setting dialog
...
Some people might wonder where the ability to select an extension
and the Sideways Wii Remote went. This button will take them to the
general settings, which is where those settings now live.
At some point in the future, we should probably move everything to the
general settings. But this pull request is already big enough as it is!
2023-03-07 17:39:34 +01:00
JosJuice
6b5f82c12f
Android: Change how the overlay controller setting works, part 2
...
The previous commit wasn't enough for getting inputs to work for
controllers 2-4.
2023-03-07 17:39:34 +01:00
JosJuice
1b55d7c594
Android: Change how the overlay controller setting works
...
Up until now, there have been two settings on Android that stored the
selected Wii Remote extension: the normal one that's also used on PC,
and a SharedPreferences one that's used by the overlay controls to
determine what controls to show. It is possible for these two to end up
out of sync, and my input changes have made that more likely to happen.
To fix this, let's rework how the overlay controller setting works.
We don't want it to encode the currently selected Wii Remote extension.
However, we can't simply get rid of the setting, because for some Wii
games we need the ability to switch between a GameCube controller and a
Wii Remote. What this commit does is give the user the option to select
any of the 4 GameCube controllers and any of the 4 Wii Remotes. (Before,
controllers 2-4 weren't available in the overlay.) Could be useful for
things like the Psycho Mantis fight in Metal Gear Solid. I'm also
switching from SharedPreferences to Dolphin.ini while I'm at it.
2023-03-07 17:39:34 +01:00
JosJuice
4c326f2030
Android: Remove the in-emulation IR sensitivity options
...
This too can be set in the normal controller settings now.
2023-03-07 17:39:34 +01:00
JosJuice
ee2c7dc24b
Android: Remove the in-emulation motion control options
...
You can set this in the normal controller settings now.
2023-03-07 17:39:34 +01:00
JosJuice
9b9b6d97bc
Config: Simplify IsSettingSaveable's handling of Android section
...
The Android-specific controller mapping system is now gone,
so IsSettingSaveable can be greatly simplified.
2023-03-07 17:39:34 +01:00
JosJuice
32cb41007b
Android: Allow changing controller settings during emulation
2023-03-07 17:39:34 +01:00
JosJuice
c2779aef06
Android: Add the advanced input mapping dialog
...
It's missing a lot of features from the PC version for now, like
buttons for inserting functions and the ability to see what the
expression evaluates to. I mostly just wanted to get something in
place so you can set up rumble.
Co-authored-by: Charles Lombardo <clombardo169@gmail.com>
2023-03-07 17:39:30 +01:00
Admiral H. Curtiss
f389da2a33
HW/HSP: Refactor to class, move to System.
2023-03-07 02:11:39 +01:00
Admiral H. Curtiss
655cc7f75c
DiscIO: Add support for CleanRip-style split ISOs.
2023-03-05 19:23:55 +01:00
Scott Mansell
4acdbc0e84
Merge pull request #11625 from phire/eventhook_nodiscard
...
Fix KillRenderer config changed regression
2023-03-06 03:09:12 +13:00
Scott Mansell
901f12c935
HookableEvents: Add [[nodiscard]] to Register
2023-03-06 00:12:26 +13:00
Scott Mansell
b7db2510ef
Don't discard ConfigChanged callback handle
2023-03-06 00:12:26 +13:00
Scott Mansell
70cfb46f8e
Fix duplicated FPS
...
This is a small regression from KillRenderer, which caused duplicated
frames to be counted on the FPS counter when the "Skip Presenting
Duplicated Frames" option was disabled.
2023-03-05 23:31:12 +13:00
Shawn Hoffman
5bf9ad7d82
msvc: enable compiler checks added in vs 17.5
2023-03-04 14:18:18 -08:00
Shawn Hoffman
35bde3e7c8
msvc: bump required version to align with vs 17.5
2023-03-04 14:18:18 -08:00
Joshua de Reeper
2585ae9b2c
Skylander Portal: Clearing and Reloading fix
2023-03-04 20:13:54 +13:00
JosJuice
42943672bb
Android: Add selecting input profile per game
2023-03-03 22:28:25 +01:00
JosJuice
1eeded23df
Android: Add input profile management
...
Co-authored-by: Charles Lombardo <clombardo169@gmail.com>
2023-03-03 22:28:25 +01:00
JosJuice
7ef229d908
Android: Show warning when using old pre-defined controller INIs
...
Co-authored-by: Charles Lombardo <clombardo169@gmail.com>
2023-03-03 22:28:25 +01:00
JosJuice
8b78f73e80
Android: Add Default and Clear actions for controllers
2023-03-03 22:28:25 +01:00
JosJuice
ea3200d4ba
Android: Prevent showing mapping dialog with no device selected
2023-03-03 22:28:25 +01:00
JosJuice
a1cc19f443
Android: Add "Create mappings for other devices"
2023-03-03 22:28:24 +01:00
JosJuice
2b1dd52750
Android: Add input device selection
2023-03-03 22:28:24 +01:00
JosJuice
2113bf5e3a
Android: Implement enabling/disabling control groups
...
All this code for just a single checkbox... Ah well, it has to be done
2023-03-03 22:28:24 +01:00
JosJuice
a78dca5fb0
Android: Move Sideways Wii Remote setting one submenu up
...
A slight departure from DolphinQt, but I think it makes sense, because
it will make the important Sideways Wii Remote setting easier to find.
2023-03-03 22:28:24 +01:00
JosJuice
e7530a1cb9
Android: Split Wii Remote settings into submenus
...
Too much stuff on one screen otherwise. This split matches DolphinQt.
2023-03-03 22:28:24 +01:00
JosJuice
0dd8bbbbbb
Android: Add extension selection
2023-03-03 22:28:24 +01:00
JosJuice
1c26a85e35
Android: Add NumericSetting support
2023-03-03 22:28:24 +01:00
JosJuice
2c529b9db1
Android: Add new input mapping implementation
2023-03-03 22:28:24 +01:00
JosJuice
dd8976f18d
Android: Remove old input mapping implementation
...
This old code is of no use now that ButtonManager is gone.
2023-03-03 22:28:24 +01:00
JosJuice
304d898966
Android: Remove copyAsset's overwrite parameter
...
Because of the previous commit, this is no longer needed.
2023-03-03 22:28:24 +01:00
JosJuice
93657cce54
Android: Stop extracting pre-defined controller INIs
2023-03-03 22:28:24 +01:00
JosJuice
9a8a395560
GCPadEmu/WiimoteEmu: Reorder control groups
...
This way, Android (which will show groups in the order they're defined)
will show groups in a more logical order similar to DolphinQt.
The main thing that was annoying me was how early Rumble was for
Wii Remotes. Some of the other changes I'm making in this commit,
like the order of Shake/Tilt/Swing, are more arbitrary and were
made for consistency with DolphinQt. But there are also places
where I didn't go all the way with matching DolphinQt. Most notably,
DolphinQt puts sticks before buttons, but I don't see any reason
to do that for Android.
2023-03-03 22:28:24 +01:00
JosJuice
e0562abb7d
ControllerEmu: Add default mappings for Android
...
Unlike PCs, Android doesn't really have any input method (not counting
touch) that can reasonably be expected to exist on most devices.
Because of this, I don't think shipping with a default mapping for the
buttons and sticks of GameCube controllers and Wii Remotes makes sense.
I would however like to ship default mappings for a few things:
1. Mapping the Wii Remote's accelerometer and gyroscope to the device's
accelerometer and gyroscope. This functionality is useful mainly
for people who use the touchscreen, but can also be useful when
using a clip-on controller. The disadvantage of having this mapped
by default is that games disable pointer input if the accelerometer
reports that the Wii Remote is pointed at the ceiling.
2. Mapping GC keyboards for use with a physical keyboard, like on PC.
After all, there's no other way of mapping them that makes sense.
3. Mapping rumble to the device's vibrator.
Aside from the GC keyboards, this approach is effectively the same as
what we were doing before the input overhaul.
2023-03-03 22:28:23 +01:00
JosJuice
8e33458f48
ControllerInterface/Android: Implement rumble
2023-03-03 22:28:23 +01:00
JosJuice
065481d989
ControllerInterface/Android: Automatically suspend sensors
...
This is a battery-saving measure. Whether a sensor should be suspended
is determined in the same way as whether key events and motion events
should be handled by the OS rather than consumed by Dolphin.
2023-03-03 22:28:23 +01:00
JosJuice
36acb17700
ControllerInterface/Android: Implement sensor input for InputDevices
...
This functionality was added in Android 12 to let apps get motion data
for gamepads.
2023-03-03 22:28:23 +01:00
JosJuice
5e51b56d72
ControllerInterface/Android: Implement sensor input
2023-03-03 22:28:23 +01:00
JosJuice
104ea09892
ControllerInterface/Android: Implement hotplug
2023-03-03 22:28:23 +01:00
JosJuice
d6af294a23
ControllerInterface/Android: Return whether input was handled
...
When Android presents an input event to an app, it wants the app to
return true or false depending on whether the app handled the event or
not. If the event wasn't handled by the app, it will be passed on to
the system, which may decide to take an action depending on what kind
of input event it is. For instance, if a B button press is passed on to
the system, it will be turned into a Back press. But if an R1 press is
passed on to the system, nothing in particular happens.
It's important that we get this return value right in Dolphin. For
instance, the user generally wouldn't want a B button press to open
the EmulationActivity menu, so B button presses usually shouldn't be
passed on to the system - but volume button presses usually should be
passed on to the system, since it would be hard to adjust the volume
otherwise. What ButtonManager did was to pass on input events that are
for a button which the user has not mapped, which I think makes sense.
But exactly how to implement that is more complicated in the new input
backend than in ButtonManager, because now we have a separation between
the input backend and the code that keeps track of the user's mappings.
What I'm going with in this commit is to treat an input as mapped if
it has been polled recently. In part I chose this because it seemed
like a simple way of implementing it that wouldn't cause too many
layering violations, but it also has two useful side effects:
1. If a controller is not being polled (e.g. GameCube controllers in
Wii games that don't use them), its mappings will not be considered.
2. Once sensor input is implemented in the Android input backend,
we will be able to use this "polled recently" tracking to power down
the sensors at times when the game is using a Wii Remote reporting
mode that doesn't include motion data. (Assuming that the sensor
inputs only are mapped to Wii Remote motion controls, that is.)
2023-03-03 22:28:23 +01:00
JosJuice
ca508e4503
ControllerInterface/Android: Handle input events
...
Android doesn't let us poll inputs whenever we want. Instead, we
listen to input events (activities will have to forward them to the
input backend), and store the received values in atomic variables
in the Input classes. This is similar in concept to how ButtonManager
worked, but without its homegrown second input mapping system.
2023-03-03 22:28:23 +01:00
JosJuice
792cb62195
ControllerInterface/Android: Implement device population
2023-03-03 22:28:23 +01:00
JosJuice
68ebb5c33e
Android: Remove old rumble implementation
2023-03-03 22:28:23 +01:00
JosJuice
9e7a2ee0fb
Android: Remove old motion input implementation
2023-03-03 22:28:23 +01:00
JosJuice
0150f521f7
ControllerInterface/Android: Rip out ButtonManager
...
ButtonManager is very different from how a normal input backend works,
and is making it hard for us to improve controller support on Android.
The following commits will add a new input backend in its place.
2023-03-03 22:28:23 +01:00
JosJuice
95ce41ac56
Merge pull request #11399 from JosJuice/jit-one-stack
...
Jit: Don't use a second stack
2023-03-03 22:27:16 +01:00
Minty-Meeo
bf079d6d3a
[[unlikely]] ASSERT
...
and other ASSERT usage changes
2023-03-02 19:54:15 -06:00
Mai
6361586a04
Merge pull request #11582 from Pokechu22/software-crash-on-startup
...
Software: Fix regressions from "Kill Renderer"
2023-03-02 15:13:00 -05:00
Mai
ab2f8d3475
Merge pull request #11607 from AdmiralCurtiss/sd-progress
...
Qt/WiiPane: Add progress window for SD card conversion.
2023-03-02 15:08:18 -05:00
Mai
6fcec80eb0
Merge pull request #11605 from JosJuice/android-mappings-button
...
Android: Add a button for accessing controller mappings
2023-03-02 15:06:47 -05:00
Mai
cbbc518bc4
Merge pull request #11612 from iwubcode/custom_texture_data
...
VideoCommon: move hirestexture data to reusable class called CustomTextureData
2023-03-02 15:05:46 -05:00
Mai
78e8669bac
Merge pull request #11614 from t895/kotlin-cheats
...
Android: Convert Cheats Activity to Kotlin
2023-03-02 15:04:19 -05:00
Mai
1b7969bc62
Merge pull request #11615 from t895/kotlin-riivolution
...
Android: Convert Riivolution Boot Activity to Kotlin
2023-03-02 15:03:43 -05:00
Mai
b9fd7e7bd4
Merge pull request #11616 from t895/kotlin-skylanders
...
Android: Convert Skylanders code to Kotlin
2023-03-02 15:03:18 -05:00
Pokechu22
9cdc0aca9b
Software: Fix "Auto-Adjust Window Size"
...
This also needs to be handled on the software renderer path.
2023-03-02 11:08:49 -08:00
Pokechu22
78428dd8db
Software: Fix crash on startup when using "Compile Shaders Before Starting"
...
When that setting is enabled, m_xfb_entry is initially not present (during the phase where a shader compilation progress bar would be shown). The main path checks for m_xfb_entry, but the software renderer fallback path didn't.
Fixes another aspect of https://bugs.dolphin-emu.org/issues/13172 .
2023-03-02 11:08:49 -08:00
Pokechu22
4a2d3c83c7
Software: Implement GetSurfaceInfo()
...
Before, it used a fallback where it returned a default object, where the width and height were set to 0. Presenter::Initialize() used GetSurfaceInfo to set the backbuffer size, then used that size when initializing the on-screen UI (even for the software renderer, where the on-screen UI isn't currently present), which meant that ImGui got a window size of 0 and thus resulted in a failed assertion.
Although BindBackbuffer checks for size changes, it doesn't help because ImGui has already been initialized, and the size hasn't actually changed since initialization occured.
Fixes one aspect of https://bugs.dolphin-emu.org/issues/13172 .
2023-03-02 11:08:49 -08:00
JosJuice
96deb2d897
Android: Hide controller mappings button when controller type is None
...
Also removed the make_sure_continuous_scan_enabled message.
It doesn't make sense with the new UX.
2023-03-02 18:25:10 +01:00
Charles Lombardo
2067c8eed1
Android: Convert ConvertActivity to Kotlin
2023-03-02 01:54:46 -05:00
Charles Lombardo
fb432dd58a
Android: Convert ConvertFragment to Kotlin
2023-03-02 01:54:46 -05:00
SMarioMan
078730c873
Avoid altering TCP sockets
...
Co-authored-by: sepalani <sepalani@hotmail.fr>
2023-03-01 20:52:43 -05:00
Charles Lombardo
7efb672be6
Android: Convert SkylanderSlotAdapter to Kotlin
2023-03-01 17:32:19 -05:00
Charles Lombardo
36f1315513
Android: Convert SkylanderSlot to Kotlin
2023-03-01 17:32:07 -05:00
Charles Lombardo
bbc1951afb
Android: Convert SkylanderConfig to Kotlin
2023-03-01 17:32:07 -05:00
Charles Lombardo
71e82d76b5
Android: Convert SkylanderPair to Kotlin
2023-03-01 17:13:42 -05:00
Charles Lombardo
85b30f198b
Android: Convert Skylander to Kotlin
2023-03-01 17:13:01 -05:00
Charles Lombardo
4045e213ba
Android: Convert RiivolutionAdapter to Kotlin
2023-03-01 14:39:18 -05:00
Charles Lombardo
df21663d4c
Android: Convert RiivolutionBootActivity to Kotlin
2023-03-01 14:38:59 -05:00
Charles Lombardo
79d0ff55d2
Android: Convert RiivolutionItem to Kotlin
2023-03-01 14:38:37 -05:00
Charles Lombardo
e37503675a
Android: Convert RiivolutionViewHolder to Kotlin
2023-03-01 14:38:19 -05:00
Charles Lombardo
ec7b811de3
Android: Convert RiivolutionPatches to Kotlin
2023-03-01 14:38:02 -05:00
Charles Lombardo
3935449ca0
Android: Convert TwoPaneOnBackPressedCallback to Kotlin
2023-03-01 13:47:28 -05:00
Charles Lombardo
6bc4ae7438
Android: Convert SettingDisabledWarningFragment to Kotlin
2023-03-01 13:41:55 -05:00
Charles Lombardo
53d404c5a0
Android: Convert HeaderViewHolder to Kotlin
2023-03-01 13:41:02 -05:00
Charles Lombardo
58b7b80902
Android: Convert GraphicsModsDisabledWarningFragment to Kotlin
2023-03-01 13:40:48 -05:00
Charles Lombardo
a8da5902bb
Android: Convert CheatViewHolder to Kotlin
2023-03-01 13:40:28 -05:00
Charles Lombardo
25fb3218d9
Android: Convert CheatsDisabledWarningFragment to Kotlin
2023-03-01 13:40:08 -05:00
Charles Lombardo
fcfde12c52
Android: Convert CheatsAdapter to Kotlin
2023-03-01 13:39:49 -05:00
Charles Lombardo
23d9def613
Android: Convert CheatsActivity to Kotlin
2023-03-01 13:39:23 -05:00
Charles Lombardo
3bcc4a0a59
Android: Convert CheatListFragment to Kotlin
2023-03-01 13:39:07 -05:00
Charles Lombardo
d8c1381155
Android: Convert CheatItemViewHolder to Kotlin
2023-03-01 13:38:27 -05:00
Charles Lombardo
cacbac9152
Android: Convert CheatItem to Kotlin
2023-03-01 13:37:57 -05:00
Charles Lombardo
5f5c95e7da
Android: Convert CheatDetailsFragment to Kotlin
2023-03-01 13:37:21 -05:00
Charles Lombardo
b2dd510d0a
Android: Convert ActionViewHolder to Kotlin
2023-03-01 13:37:07 -05:00
Charles Lombardo
fb177631ef
Android: Convert ReadOnlyCheat to Kotlin
2023-03-01 13:36:53 -05:00
Charles Lombardo
59ecda7939
Android: Convert CheatsViewModel to Kotlin
2023-03-01 13:36:40 -05:00
Charles Lombardo
1b61f2c223
Android: Convert Cheat to Kotlin
2023-03-01 13:35:43 -05:00
Charles Lombardo
fbc617c917
Android: Convert AbstractCheat to Kotlin
2023-03-01 13:35:33 -05:00
Charles Lombardo
37e8cd1789
Android: Convert GeckoCheat to Kotlin
2023-03-01 13:35:14 -05:00
Charles Lombardo
9e090c6bab
Android: Convert GraphicsMod to Kotlin
2023-03-01 13:34:34 -05:00
Charles Lombardo
5f6995fe6c
Android: Convert GraphicsModGroup to Kotlin
2023-03-01 13:34:09 -05:00
Charles Lombardo
9cbe66bce4
Android: Convert PatchCheat to Kotlin
2023-03-01 13:33:16 -05:00
Charles Lombardo
408b6cb50c
Android: Convert ARCheat to Kotlin
2023-03-01 13:32:42 -05:00
iwubcode
42cb3f3904
VideoCommon: remove HiResTexture DDS loading, update hirestexture logic to use custom texture data
2023-03-01 12:11:04 -06:00
iwubcode
3e35255983
VideoCommon: add class to load custom texture data
2023-03-01 11:58:37 -06:00
Charles Lombardo
a4730a9388
Android: Initialize TaskViewModel earlier in User Data Activity
2023-03-01 08:28:44 -05:00
Charles Lombardo
211be4698f
Merge pull request #11515 from t895/user-data-kotlin
...
Android: Rewrite User Data Activity in Kotlin
2023-02-28 23:47:00 -05:00
Charles Lombardo
c904e068f0
Android: Use DialogFragments to direct UserData actions
2023-02-28 22:33:42 -05:00
Charles Lombardo
8d1cf14565
Android: Convert ThreadUtil to Kotlin
2023-02-28 22:21:18 -05:00
Admiral H. Curtiss
e2bd7d1d95
Common/FatFsUtil: Close temp file before deleting it on conversion failure.
2023-02-28 20:31:56 +01:00
Admiral H. Curtiss
fe26b54efd
Qt/WiiPane: Add progress window for SD card conversion.
2023-02-28 20:31:55 +01:00
Admiral H. Curtiss
435d8c39ee
Common/FatFsUtil: Add callback for cancelling SD card conversion.
2023-02-28 20:31:51 +01:00
JosJuice
b6256a57ef
Jit: Move stack handling code to JitBase
...
Deduplication between Jit64 and JitArm64.
2023-02-28 20:30:06 +01:00
JosJuice
86c1f6e1e7
Jit: Don't use a second stack
...
This second stack leads to JNI problems on Android, because ART fetches
the address and size of the original stack using pthread functions
(see GetThreadStack in art/runtime/thread.cc), and (presumably) treats
stack addresses outside of the original stack as invalid. (What I don't
understand is why some JNI operations on the CPU thread work fine
despite this but others don't.)
Instead of creating a second stack, let's borrow the approach ART uses:
Use pthread functions to find out the stack's address and size, then
install guard pages at an appropriate location. This lets us get rid
of a workaround we had in the MsgAlert function.
Because we're no longer choosing the stack size ourselves, I've made some
tweaks to where the put the guard pages. Previously we had a stack of
2 MiB and a safe zone of 512 KiB. We now accept stacks as small as 512 KiB
(used on macOS) and use a safe zone of 256 KiB. I feel like this should
be fine, but haven't done much testing beyond "it seems to work".
By the way, on Windows it was already the case that we didn't create
a second stack... But there was a bug in the implementation!
The code for protecting the stack has to run on the CPU thread, since
it's the CPU thread's stack we want to protect, but it was actually
running on EmuThread. This commit fixes that, since now this bug
matters on other operating systems too.
2023-02-28 20:29:46 +01:00
JosJuice
0cdae98181
Jit: Fix GUARD_OFFSET calculation
...
Seems like this was broken all along. The safe zone is at the lower
addresses of the stack, not the higher addresses.
2023-02-28 19:11:35 +01:00
Admiral H. Curtiss
a0974c18cd
RiivolutionPatcher: Use capitalization of file that exists in the host file system if possible.
...
Fixes https://bugs.dolphin-emu.org/issues/13138
2023-02-28 00:56:34 +01:00
Admiral H. Curtiss
bdb19085c4
Common: Add utility function for case-insensitive string comparison.
2023-02-28 00:56:33 +01:00
JosJuice
b827b155a0
Android: Refactor handleMenuTag
...
It was a bit silly having four functions for effectively the same thing
in all of SettingsFragmentView, SettingsFragment, SettingsActivityView,
SettingsActivity, and SettingsActivityPresenter.
With this change, we split on the four MenuTag types in
SettingsActivityPresenter instead of in SettingsAdapter.
2023-02-27 21:52:17 +01:00
JosJuice
8acc39cc3f
Android: Add a button for accessing controller mappings
...
The settings GameCube Controller N and Wii Remote N (where N is a number)
have two purposes: You can select what controller type you want to use,
and also, when you select a controller type (even if you're selecting the
one that already is selected), the mapping settings open. This second part
is less discoverable than it ideally should be. I'm changing it so that
there now is a button for opening the mapping settings instead.
2023-02-27 20:10:24 +01:00
JosJuice
7586fc8134
Merge pull request #11608 from Dentomologist/fix_dynamicinputtextures_directory_error_logs
...
UICommon: Create Load/DynamicInputTextures directory on startup
2023-02-27 18:07:57 +01:00
Admiral H. Curtiss
251fb92b80
Merge pull request #11606 from JosJuice/control-group-save-enabled
...
InputCommon: Fix ControlGroup::SaveConfig with DefaultValue::Disabled
2023-02-27 12:02:25 +01:00
Admiral H. Curtiss
c730ee2de2
Merge pull request #11596 from AdmiralCurtiss/copyany
...
Common/FileUtil: Migrate CopyDir() to a more clear interface.
2023-02-27 12:02:00 +01:00
Admiral H. Curtiss
a11b9d585f
Common/FileUtil: Remove obsolete CopyDir() function.
2023-02-26 23:17:10 +01:00
Admiral H. Curtiss
4f462b4ef6
Migrate destructive calls of File::CopyDir() to File::Move().
2023-02-26 23:17:10 +01:00
Admiral H. Curtiss
5367bf394c
Common/FileUtil: Add Move() function.
2023-02-26 23:17:09 +01:00
Dentomologist
e62162e486
UICommon: Create Load/DynamicInputTextures directory on startup
...
Fix console error spam on Dolphin and game startup if the directory
doesn't exist.
2023-02-26 13:10:15 -08:00
Daniel Garza
02f7c0213f
Qt/GameList: Also filter by filename when searching.
2023-02-26 19:13:45 +01:00
JosJuice
9b3816c993
InputCommon: Fix ControlGroup::SaveConfig with DefaultValue::Disabled
...
I also changed LoadConfig, but that change doesn't affect correctness,
it's only so it looks neat by matching SaveConfig.
This bug was added in 18a4afb053
, the
commit that introduced DefaultValue::Disabled. The bug can't actually be
triggered in master, but it can be triggered in the Android input
overhaul PR.
2023-02-26 17:45:09 +01:00
Admiral H. Curtiss
26adf78e45
Merge pull request #11602 from JosJuice/cpu-guard-expression
...
PowerPC: Rework CPUThreadGuard handling in Expression.cpp
2023-02-26 11:55:47 +01:00
Shawn Hoffman
28956cc6c2
workaround msvc optimizer bug
2023-02-25 23:26:27 -08:00
Dentomologist
ad6e95afb4
D3D: Restore workaround for erroneous NaN optimization
...
The HLSL compiler incorrectly decides isnan can't be true, so this
workaround was originally added in 52c82733
but lost during the
conversion to SPIR-V.
2023-02-25 16:27:30 -08:00
JosJuice
19e8569634
Merge pull request #11594 from t895/autofit-grid
...
Android: Responsive autofit grid
2023-02-25 17:30:40 +01:00
Charles Lombardo
a049a0d4bc
Android: Remove unused refreshScreenshotAtPosition interface method
2023-02-25 11:17:16 -05:00
Charles Lombardo
5957d85178
Android: Create AutofitGridLayoutManager
...
Extends GridLayoutManager to make span changes much more responsive.
2023-02-25 11:17:16 -05:00
JosJuice
ae5311d6e6
PowerPC: Rework CPUThreadGuard handling in Expression.cpp
...
See https://github.com/dolphin-emu/dolphin/pull/11554#discussion_r1113949572 .
2023-02-25 16:13:34 +01:00
Dentomologist
d18735e82e
Qt/WiimoteControllersWidget: Add bluetooth unavailable message
2023-02-24 14:30:43 -08:00
Admiral H. Curtiss
1ed0e014cd
Migrate non-destructive calls of File::CopyDir() to File::Copy().
2023-02-24 20:32:19 +01:00
Admiral H. Curtiss
884917a6d5
Common/FileUtil: Use non-throwing overload of is_directory() in CreateDir() and CreateFullPath().
2023-02-24 20:32:19 +01:00
Admiral H. Curtiss
e479f92418
Common/FileUtil: Add CreateDirs() function as a wrapper around std::filesystem::create_directories().
2023-02-24 20:32:18 +01:00
Admiral H. Curtiss
616d57e7fc
Common/FileUtil: Add Copy() function as a wrapper around std::filesystem::copy().
2023-02-24 20:32:18 +01:00
iwubcode
5d571b068f
VideoBackends: rework d3d11 to specify samplers/bound textures using a bitset with a constant size, instead of hardcoding each individual enumeration value
2023-02-24 11:32:48 -06:00
Shawn Hoffman
2c2fb869a2
use std-provided randomness for JitArm64 unittests
...
decreases runtime significantly and lessens dependency on mbedtls
2023-02-22 12:55:12 -08:00
Admiral H. Curtiss
e52aa52a66
Common/FileUtil: Rename Copy() to CopyRegularFile().
...
This is to clarify that it can only copy files, not folders.
2023-02-22 11:43:58 +01:00
Léo Lam
3c4a21315d
Merge pull request #11592 from Pokechu22/fix-delete-ticket
...
IOS/ES: Fix crash when deleting tickets
2023-02-21 10:53:37 +01:00
Pokechu22
f2ac3aec94
IOS/ES: Fix crash when deleting tickets
...
This broke formatting the system memory; see https://bugs.dolphin-emu.org/issues/13176 . After calling ticket.DeleteTicket(), ticket.m_bytes was 0-length, but calling ticket.IsV1Ticket() still attempted to read from m_bytes.
This was introduced in 2fd9852ca8
, although it didn't actually cause a crash until 929fba08e7
.
2023-02-20 18:33:34 -08:00
JosJuice
2aedd8f568
Merge pull request #11590 from t895/unused-layout-class
...
Android: Remove SettingsFrameLayout
2023-02-20 23:33:07 +01:00
JosJuice
0fb9105700
Merge pull request #11408 from t895/coil
...
Android: Rewrite image loading with Kotlin and Coil
2023-02-20 20:51:36 +01:00
Charles Lombardo
0638e08989
Android: Remove SettingsFrameLayout
2023-02-20 14:11:08 -05:00
Mai
6f21ce7d95
Merge pull request #11555 from CookiePLMonster/wil-todos
...
Address WIL todos in UICommon.cpp
2023-02-20 10:14:49 -05:00
Charles Lombardo
28faca63a6
Android: Replace Glide with Coil image loading
2023-02-20 00:38:24 -05:00
Admiral H. Curtiss
4e6c89fbfd
Qt/CodeViewWidget: Don't read PC in Update() if we don't have a CPU thread guard.
2023-02-20 03:10:12 +01:00
Admiral H. Curtiss
ef1520c2c6
Qt/CodeViewWidget: Don't try to pause emulator in Update() if we happen to be on a breakpoint.
2023-02-20 02:56:04 +01:00
Seeky
4e6e510003
Debugger: Add string comparison to conditional breakpoints.
2023-02-20 01:40:33 +01:00
JosJuice
f2be35c7cd
VideoCommon: Reword the unknown opcode error message
...
When faced with this error, users often don't try disabling dual core,
even though the error message suggests it. Perhaps the message is just
too long and lists too many things?
To try to improve the situation, I'm rewording the message and making it
say different things depending on what settings you are using.
2023-02-19 16:35:28 +01:00
JosJuice
78c53bfec8
Jit64: Fix the offsetAddedToAddress correction
...
The LEA that the signal handler is trying to undo the effects of is a
32-bit instruction, and the value in the register prior to the LEA is
also 32-bit, so the signal handler should use a 32-bit write.
(Actually, in the end this doesn't really matter, because the first
instruction that reads this value after backpatching is also a 32-bit
instruction...)
2023-02-18 21:14:31 +01:00
JosJuice
e65167f9cd
Merge pull request #11521 from t895/adjust-grid-options
...
Android: Simplify the grid options dialog fragment
2023-02-18 15:42:46 +01:00
Admiral H. Curtiss
8db35e6d04
Merge pull request #11578 from Pokechu22/memory-leaks-feb-2023
...
Fix various memory leaks
2023-02-18 13:56:34 +01:00
Pokechu22
c94aacc968
AudioPane: Fix inconsistent initial state of audio stretching labels
...
This resulted in the labels being solid black even when audio stretching is disabled the first time the settings are opened, but then properly being greyed out after changing a setting (even the audio backend or DSP emulation engine, not just whether audio stretching is enabled).
2023-02-17 18:51:41 -08:00
Pokechu22
f1f3fd5d9d
InputCommon: Fix memory leak in ExpressionParser
...
We allocate in MakeSuppressor via `return unique_ptr(std::make_unique<...>(...).release(), InvokingDeleter{}`, so it wasn't properly getting freed.
2023-02-17 18:29:36 -08:00
Pokechu22
b6d476241a
CodeViewWidget: Fix memory leak
...
Per https://doc.qt.io/qt-6/qabstractitemview.html#setItemDelegateForColumn setItemDelegateForColumn does not take ownership of the parameter, so it was not being deleted. Specifying a parent to QObject (via QStyledItemDelegate's constructor) will allow it to automatically be deleted, per https://doc.qt.io/qt-6/objecttrees.html . The other instance of a QItemDelegate in IOWindow.cpp already used this.
2023-02-17 18:29:32 -08:00
Pokechu22
1c5e223532
MemoryViewWidget: Fix memory leaks
...
bp_item/row_item/item were never deleted, and the normal Qt ownership system wasn't applying to them because they were being cloned.
2023-02-17 18:17:01 -08:00
Admiral H. Curtiss
74abf48234
Merge pull request #11576 from yannhodiesne/convert-prevent-file-deletion
...
Check the input and destination paths before converting a game file onto itself
2023-02-17 18:49:15 +01:00
Markus Wick
b381df700c
Merge pull request #11577 from JosJuice/android-armeabi-v7a
...
Android: Fix armeabi-v7a build
2023-02-17 17:57:38 +01:00
JosJuice
90b676d368
Android: Fix armeabi-v7a build
...
This very much isn't a build configuration that we're going to ship,
but I want to be able to tell people that they can build it on their
own if they really want to see how terribly it performs :)
Just like before, you'll need to edit two lines in app/build.gradle to
define ENABLE_GENERIC=ON and actually enable armeabi-v7a if you want an
armeabi-v7a build. This commit just fixes some compilations errors that
crop up if you do so.
2023-02-17 16:58:24 +01:00
Yann Hodiesne
49e897422f
Use a success count instead of files count
2023-02-17 15:49:31 +01:00
Yann Hodiesne
cb42a03299
Check the input and destination paths before converting a game file onto itself
...
Before these changes you could tell Dolphin to convert a game file into the same format it is already in, leading to the FileDialog using the input path as the default destination path
An unsuspecting user could then click Save and Dolphin would try to convert the input file by writing the destination file on top of it... leading to an I/O error and the input file being entirely removed
2023-02-17 14:26:50 +01:00
Scott Mansell
28331c5905
Merge pull request #11574 from K0bin/val-fix
...
VideoBackends:Vulkan: Fix printing validation errors
2023-02-17 14:52:45 +13:00
Admiral H. Curtiss
0c48324c75
Jit64: Use 5 byte jump in mtmsr for the CP interrupt check.
...
WriteExternalExceptionExit() can write more than the maximum offset of the small jump.
2023-02-16 19:26:19 +01:00
Robin Kertels
2695666e6d
VideoBackends:Vulkan: Fix printing validation errors
2023-02-16 17:53:15 +01:00
Scott Mansell
6038a6e2db
Merge pull request #11569 from Hibyehello/patch-1
...
VideoBackend: Make Metal Default on MacOS
2023-02-16 21:08:35 +13:00
Pokechu22
74a14c7d1f
ControllerInterface: Fix uninitialized variables in DualShockUDPClient
...
Strangely, this case did not trigger a C26495 warning in Visual Studio's analyzer; instead, I spotted this when using Valgrind.
2023-02-15 19:23:47 -08:00
Pokechu22
67381cdb8b
VideoCommon: Remove unused ShutdownImGui function declaration
...
This was moved to the ~OnScreenUI() destructor in 0d4537d60f
.
2023-02-15 19:20:59 -08:00
Pokechu22
8802f96b7e
Fix uninitialized variable warnings (C26495)
2023-02-15 19:18:39 -08:00
Charles Lombardo
8d16aed581
Android: Convert UserDataActivity to Kotlin
2023-02-15 18:50:33 -05:00
Josh
cd38ed76e2
Keep Vulkan precedence over OpenGL
2023-02-15 12:22:56 -06:00
Josh
546a016dc8
VideoBackend: Make Metal Default on MacOS
2023-02-15 12:05:54 -06:00
SMarioMan
301e97f7f7
Remove WinAPI-specific type from socket request
2023-02-15 09:29:21 -05:00
SMarioMan
a45f6d9438
Enable broadcast permissions in socket requests
2023-02-15 07:59:38 -05:00
Admiral H. Curtiss
c36994a90d
Add unit test for File::CreateFullPath().
2023-02-15 02:56:10 +01:00
Admiral H. Curtiss
0758e00cfe
Common/FileUtil: Revert behavior of CreateFullPath().
...
This was accidentally changed in 7e6436db34
.
2023-02-15 02:21:50 +01:00
Admiral H. Curtiss
661b74f4a3
Merge pull request #11564 from JosJuice/jitarm64-cmp-order
...
JitArm64: Fix special cases of cmp
2023-02-14 20:19:07 +01:00
Admiral H. Curtiss
e1d3237dbd
Merge pull request #11342 from TellowKrinkle/GLLayerMac
...
VideoCommon: Fix stereoscopic 3D on OpenGL < 4.3 (macOS)
2023-02-14 20:17:22 +01:00
JosJuice
0049a76775
JitArm64: Fix special cases of cmp
...
This fixes a regression from 592ba31
. When `a` was a constant 0 and `b`
was a non-constant 0x80000000, the 32-bit negation operation would
overflow, causing an incorrect result. The sign extension needs to happen
before the negation to avoid overflow.
Note that I can't merge the SXTW and NEG into one instruction.
NEG is an alias for SUB with the first operand being set to ZR,
but "SUB (extended register)" treats register 31 as SP instead of ZR.
I've also changed the order for the case where `a` is a constant
0xFFFFFFFF. I don't think the order actually affects correctness here,
but let's use the same order for all the cases since it makes the code
easier to reason about.
2023-02-14 19:16:00 +01:00
Admiral H. Curtiss
22ed084209
Merge pull request #11563 from JosJuice/host-lock-cpu-fixups
...
Follow-up fixes for "Properly lock CPU before accessing emulated memory"
2023-02-14 19:04:21 +01:00
JosJuice
5b6784432c
Follow-up fixes for "Properly lock CPU before accessing emulated memory"
2023-02-14 18:44:16 +01:00
TellowKrinkle
f25a0b43b6
VideoCommon: Fix stereoscopic 3D on OpenGL < 4.3 (macOS)
2023-02-14 18:25:33 +01:00
Pokechu22
4f6ce51d69
VideoCommon: Clear blend configuration if color/alpha update disabled
...
This works around an Intel driver bug where, on D3D12 only, dual-source blending behaves incorrectly if the second source is unused on. This bug is visible in skyboxes in Super Mario Sunshine, which first draw clouds and sun flare in greyscale and then draw the sky afterwards with a source factor of 1 and a dest factor of 1-src_color (this results in the clouds being tinted blue). This process is done on an RGB888 framebuffer, so alpha update is disabled. (Color update is enabled; note that if you look at this in Dolphin's fifo analyzer, it won't be enabled because they use the BP mask functionality to only change the blending functions and not alpha/color update, for whatever reason.)
2023-02-13 18:22:41 -08:00
Admiral H. Curtiss
5f929d00eb
Merge pull request #11560 from phire/EventHook_construct_on_first_use
...
HookableEvent: Switch to construct on first use
2023-02-14 01:01:03 +01:00
Admiral H. Curtiss
34a459bed7
Merge pull request #11445 from JosJuice/jit64-wraparound-backpatch
...
Jit64: Properly handle backpatching overflowed address calculations
2023-02-14 01:00:13 +01:00
Admiral H. Curtiss
3458c58c7d
Merge pull request #11503 from JosJuice/ppcanalyst-read-cr
...
PPCAnalyst: Actually check if instructions want CR
2023-02-14 00:55:24 +01:00
Admiral H. Curtiss
e2d7b6d079
Merge pull request #11559 from Pokechu22/cache-fix-plru-updates
...
PPCCache: Update PLRU on any cache access
2023-02-14 00:50:54 +01:00
Admiral H. Curtiss
8f91cb62e6
Merge pull request #11426 from shuffle2/stdfs
...
fileutil: use std::filesystem
2023-02-14 00:50:34 +01:00
Admiral H. Curtiss
e1dbea3658
JIT: Fix calls to HLE::Execute.
...
This got broken in 7cecb28bdf
.
2023-02-13 11:47:47 +01:00
Scott Mansell
05181f6b88
HookableEvent: Switch to construct on first use
...
A registration might happen during static initialization, which opens
us up to issues with ordering of static initialization.
2023-02-13 18:48:43 +13:00
Scott Mansell
1fc5d37fd2
Merge pull request #11558 from Pokechu22/vertex-loader-size-assertion-details
...
VertexLoader: Add more info to m_vertex_size == m_src_ofs assertion
2023-02-13 17:34:04 +13:00
Pokechu22
cc411c4e41
VertexLoader: Add more info to m_vertex_size == m_src_ofs assertion
2023-02-12 20:10:38 -08:00
Pokechu22
14c4f4e7f6
PPCCache: Update PLRU on any cache access
...
The previous code only updated the PLRU on cache misses, which made it so that the least recently inserted cache block was evicted, instead of the least recently used/hit one.
This regressed in 9d39647f9e
(part of #11183 , but it was fine in e97d380437
), although beforehand it was only implemented for the instruction cache, and the instruction cache hit extremely infrequently when the JIT or cached interpreter is in use, which generally keeps it from behaving correctly (the pure interpreter behaves correctly with it).
I'm not aware of any games that are affected by this, though I did not do extensive testing.
2023-02-12 19:59:19 -08:00
Scott Mansell
a4729a026f
Merge pull request #11554 from JosJuice/host-lock-cpu
...
DolphinQt: Properly lock CPU before accessing emulated memory
2023-02-13 16:08:36 +13:00
Scott Mansell
f37113204f
Merge pull request #11550 from iwubcode/set_common_samplers_count
...
VideoCommon: add constant value for maximum number of pixel samplers
2023-02-13 16:05:51 +13:00
Scott Mansell
2c24d07837
Merge pull request #11538 from t895/disc-speed-stuff
...
Rename "Speed up Disc Transfer Rate" to "Emulate Disc Speed"
2023-02-13 15:46:56 +13:00
Charles Lombardo
0ed64b080f
Rename Fast Disc Speed to Emulate Disc Speed and invert option
2023-02-12 16:20:38 -05:00
Charles Lombardo
d0941342d2
Android: Expose Emulate Disc Speed
2023-02-12 16:20:38 -05:00
Admiral H. Curtiss
300d63b492
DiscIO/FileBlob: Make m_size unsigned.
2023-02-12 20:51:08 +01:00
JosJuice
611e721a4d
Jit64: Properly handle backpatching overflowed address calculations
...
Previously we would only backpatch overflowed address calculations
if the overflow was 0x1000 or less. Now we can handle the full 2 GiB
of overflow in both directions.
I'm also making equivalent changes to JitArm64's code. This isn't because
it needs it – JitArm64 address calculations should never overflow – but
because I wanted to get rid of the 0x100001000 inherited from Jit64 that
makes even less sense for JitArm64 than for Jit64.
2023-02-12 20:48:27 +01:00
Admiral H. Curtiss
c3dee1f11c
Merge pull request #11499 from iwubcode/graphics-mod-pass-base-path
...
VideoCommon: allow graphics mods to have access to the file path where the config exists to load additional files
2023-02-12 19:04:59 +01:00
Silent
9f3d3e2b9c
Address WIL todos in UICommon.cpp
2023-02-12 15:05:54 +01:00
JosJuice
6f0266e8de
DolphinQt: Only update call stack if paused
...
This avoids a pseudo infinite loop where CodeWidget::UpdateCallstack
would lock the CPU in order to read the call stack, causing the CPU to
call Host_UpdateDisasmDialog because it's transitioning from running to
pausing, causing Host::UpdateDisasmDialog to be emitted, causing
CodeWidget::Update to be called, once again causing
CodeWidget::UpdateCallstack to be called, repeating the cycle.
Dolphin didn't go completely unresponsive during this, because
Host_UpdateDisasmDialog schedules the emitting of Host::UpdateDisasmDialog
to happen on another thread without blocking, but it was stopping certain
operations like exiting emulation from working.
2023-02-12 12:50:28 +01:00
JosJuice
7cecb28bdf
DolphinQt: Properly lock CPU before accessing emulated memory
...
This fixes a problem I was having where using frame advance with the
debugger open would frequently cause panic alerts about invalid addresses
due to the CPU thread changing MSR.DR while the host thread was trying
to access memory.
To aid in tracking down all the places where we weren't properly locking
the CPU, I've created a new type (in Core.h) that you have to pass as a
reference or pointer to functions that require running as the CPU thread.
2023-02-12 11:27:50 +01:00
MayImilae
508c79a66f
Rename VI Skip to VBI Skip
...
VI Skip was very hard to explain on the blog, so this small changes
clarifies what VI Skip is to resolve that issue.
2023-02-11 20:28:41 -08:00
iwubcode
20dc4401c5
VideoCommon: pass a graphics mod base path to the graphics mod, so it can lookup other relative files if necessary
2023-02-11 00:21:40 -06:00
Admiral H. Curtiss
2f6e7d497d
ENetUtil: Add check for valid socket in SendPacket().
2023-02-10 19:32:40 +01:00
Admiral H. Curtiss
9b5c52ad8d
Merge pull request #11541 from Pokechu22/dsptool-no-redefine-label
...
DSPTool: Fix missing error when redefining labels
2023-02-10 11:02:36 +01:00
Admiral H. Curtiss
3c2933cad2
Merge pull request #11549 from Pokechu22/texturecachebase-bitset-include
...
TextureCacheBase: Remove unused bitset include
2023-02-10 10:55:07 +01:00
JMC47
258151fe5a
Merge pull request #11523 from degasus/OGL_KHR_subgroup
...
VideoBackend/OGL: Prefer KHR_shader_subgroup over NV_shader_thread.
2023-02-10 04:47:20 -05:00
iwubcode
af313f8419
VideoCommon: add constant value to set the allowed maximum number of pixel samplers
2023-02-10 00:46:11 -06:00
Pokechu22
3024ca2146
Suppress memcpy writing to an object with no trivial copy-assignment warnings
...
We need to copy padding in most of these cases, and the objects are trivially copyable; however, BitField prevents trivial copy-assignment.
2023-02-09 16:23:49 -08:00
Pokechu22
ac7a17579e
BreakPoints: Fix shadowing warning
2023-02-09 16:23:02 -08:00
Pokechu22
3bd655463d
MemoryViewWidget: Fix warning: enumeration value ‘Null’ not handled in switch [-Wswitch]
2023-02-09 16:23:02 -08:00
Pokechu22
5c8d8383e2
CodeWidget: Fix shadowing warning
2023-02-09 16:23:02 -08:00
Pokechu22
470115fd4f
TextureDecoder: Fix warning: array subscript has type ‘char’ [-Wchar-subscripts]
2023-02-09 16:23:02 -08:00
Pokechu22
debed35c10
State: Fix shadowing warnings
2023-02-09 16:23:02 -08:00
Pokechu22
9559c45cae
CommandProcessor: Fix shadowing warnings
2023-02-09 16:23:02 -08:00
Pokechu22
f1b1f5c013
IOS: Fix shadowing warnings
2023-02-09 16:23:02 -08:00
Pokechu22
8d71f542cb
Boot: Fix shadowing warning
2023-02-09 16:23:02 -08:00
Pokechu22
39c5d55f03
VertexLoaderBase: Fix shadowing warning
2023-02-09 16:23:02 -08:00
Pokechu22
95bee485c9
GraphicsModManager: Fix shadowing warning
2023-02-09 16:23:02 -08:00
Pokechu22
7fafb00561
InputCommon/XInput2: Fix shadowing warning
2023-02-09 16:23:02 -08:00
Pokechu22
edcc4a6578
AudioInterface: Fix warning: declaration of ‘state’ shadows a previous local
2023-02-09 16:23:02 -08:00
Pokechu22
8ad7d58303
DSP: Fix warning: declaration of ‘state’ shadows a previous local
2023-02-09 16:23:02 -08:00
Pokechu22
24df509447
DVDInterface: Fix warning: declaration of ‘state’ shadows a previous local
2023-02-09 16:23:02 -08:00
Pokechu22
9c52c600c4
EXI_DeviceEthernet: Fix warning: operation on ‘current_rwp’ may be undefined [-Wsequence-point]
2023-02-09 16:23:01 -08:00
Pokechu22
1465620721
GCMemcardDirectory: Fix variable shadowing warning
2023-02-09 16:23:01 -08:00
Pokechu22
c555a4f0c6
SerialInterface: Fix warning: declaration of ‘state’ shadows a previous local
2023-02-09 16:23:01 -08:00
Pokechu22
72b4675c8f
VideoInterface: Fix warning: declaration of ‘state’ shadows a previous local
2023-02-09 16:23:01 -08:00
Pokechu22
49a84cbc4c
Resolve various "no previous declaration" warnings
2023-02-09 16:23:01 -08:00
Pokechu22
2288ba28ae
Software/Tev: Fix member shadowing warnings
2023-02-09 16:23:01 -08:00
Pokechu22
8b98dd9be3
Move s_using_custom_client to DiscordPresence.cpp
...
Otherwise, files that include the header get warning: ‘Discord::s_using_custom_client’ defined but not used.
2023-02-09 16:23:01 -08:00
Pokechu22
b316ce6fdd
Fix warning: implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20
2023-02-09 16:23:01 -08:00
Pokechu22
af5013b60f
Suppress -Winvalid-offsetof for PowerPC::PowerPCState
...
This code doesn't need to be portable (since the goal is to have a smaller offset for x64 codegen), so if it's not supported there are other problems. Similar code exists in e.g. DSP.cpp.
2023-02-09 16:23:01 -08:00
Pokechu22
5283a85205
TextureCacheBase: Remove unused bitset include
...
It was used for valid_bind_points, which was removed in 88bd10cd30
(and the declaration was more recently removed in 606c18210d
).
2023-02-09 16:04:48 -08:00
JMC47
a88e5ef390
Merge pull request #11498 from iwubcode/save_pipeline_config
...
VideoCommon: store the configuration used to create the AbstractPipeline
2023-02-09 18:38:49 -05:00
Markus Wick
a38e365931
Merge pull request #11547 from JosJuice/fix-gles
...
OGL: Fix GLES crashing on initialization
2023-02-09 18:16:48 +01:00
JosJuice
6dfd582de6
OGL: Fix GLES crashing on initialization
...
Fixes a regression from PR 11522 ("Kill Renderer").
2023-02-09 18:09:03 +01:00
Markus Wick
17d7b75a9b
Merge pull request #11544 from jmallach/spng
...
Allow building against system libspng
2023-02-09 14:47:58 +01:00
degasus
4b2aa948e6
VideoBackend/OGL: Prefer KHR_subgroup over NV_shader_thread.
...
While the NV extension is totally fine, the KHR extension should be able to support more hardware.
For NVIDIA, the hardware either supports both or neither, it just needs a driver from the last two years.
For AMD, the drivers from late 2022-12 seems to bring support for the KHR extension.
For Intel, the KHR is also supported for some years.
2023-02-09 13:27:02 +01:00
iwubcode
d0c6b6c9ed
VideoCommon: store the configuration used to create the AbstractPipeline on the pipeline itself, so that it's easy to duplicate pipelines with slightly altered configuration
2023-02-09 02:13:53 -06:00
Scott Mansell
aaad0cd39f
Merge pull request #11539 from phire/improve_workqueuethread
...
Various WorkQueueThread improvements
2023-02-09 20:00:04 +13:00
Scott Mansell
ccf92a3e56
Merge pull request #11522 from phire/KillRendererWithFire
...
Kill Renderer (with phire)
2023-02-09 19:59:16 +13:00
Scott Mansell
5c1b3ac61d
Hook up Presenter's ConfigChanged function
...
Fixes issue with post-processing not working
2023-02-09 18:36:20 +13:00
Scott Mansell
9c1fe59cc9
Insert a more solid abstraction between Qt and Imgui
2023-02-09 18:36:20 +13:00
Scott Mansell
b2a31103b4
Presenter: Handle blanked frames correctly
2023-02-09 18:36:20 +13:00
Scott Mansell
83b7b01265
Fix XFB duplicate detection
...
Frame duplicate detection was inverted. Huge problem for 60fps games
where it would see all frames as "duplicates" and nothing would ever be
presented.
2023-02-09 18:36:20 +13:00
Scott Mansell
d3ddd96cee
Make sure m_prev_efb_format is initilized
2023-02-09 18:36:20 +13:00
Scott Mansell
59a4b026f6
Better documentation for HookableEvent.
2023-02-09 18:36:20 +13:00
Scott Mansell
8c8bd0e7ac
Rename to HookableEvent. Because naming conflict
2023-02-09 18:36:20 +13:00
Scott Mansell
60f2b5af7b
Apply suggestions from code review
...
Co-authored-by: Mai <mathew1800@gmail.com>
Co-authored-by: BhaaL <bhaalsen@gmail.com>
Co-authored-by: iwubcode <iwubcode@users.noreply.github.com>
2023-02-09 18:36:20 +13:00
Scott Mansell
e0a1631659
Add comment about "end of frame"
2023-02-09 18:36:20 +13:00
Scott Mansell
43b6a49012
Apply suggestions from code review
...
Co-authored-by: Mai <mathew1800@gmail.com>
2023-02-09 18:36:20 +13:00
Scott Mansell
05fad53fa0
Update STATE_VERSION
...
Co-authored-by: BhaaL <bhaalsen@gmail.com>
2023-02-09 18:36:20 +13:00
Scott Mansell
e2de281897
Make sure pixel shaders pick up Initial EFB Scale
2023-02-09 18:36:20 +13:00
Scott Mansell
cf9a6f8477
Lint fixes
2023-02-09 18:36:20 +13:00
Scott Mansell
f7ad825736
fix fbdev
2023-02-09 18:36:20 +13:00
Scott Mansell
628af9d564
Fix builds with FFMPEG disabled
2023-02-09 18:36:20 +13:00
Scott Mansell
4422af1272
Cleanup headers
2023-02-09 18:36:20 +13:00
Scott Mansell
5803786beb
Move UseVertexDepthRange() out of Renderer
...
There wasn't really a good place for it, but this will do
2023-02-09 18:36:20 +13:00
Scott Mansell
2cfc02a116
Move m_prev_efb_format into FramebufferManager
2023-02-09 18:36:20 +13:00
Scott Mansell
9b5397abdb
Move WidescreenHeuristic to it's own class
...
It's about the only thing left in renderer
2023-02-09 18:36:20 +13:00
Scott Mansell
31cfe8250d
Lint fixes
2023-02-09 18:36:20 +13:00
Scott Mansell
11de923dcb
Move xfb tracking and IR scaling out of RenderBase
2023-02-09 18:36:20 +13:00
Scott Mansell
e009002411
Refactor ClearRegion
...
And fix bug where opengl was getting the wrong coordinates
2023-02-09 18:36:20 +13:00
Charles Lombardo
e6583f8bec
Android: Convert image loading code to Kotlin
2023-02-08 19:34:27 -05:00
Jordi Mallach
4d164fcb77
Allow building against system libspng
2023-02-06 13:30:46 +01:00
Joshua de Reeper
e0b3dd0dcf
Remove Imaginators Skylanders from list
...
Add Vicarious Visions variant
2023-02-06 15:16:06 +13:00
Admiral H. Curtiss
ca0b61be91
Merge pull request #11459 from OatmealDome/steam-user-dir
...
CommonPaths: Add Steam-specific user directory and clean up
2023-02-05 23:52:41 +01:00
Scott Mansell
2ff155f742
Optimise cond_var predicate order
...
m_items.empty() is by far the most likely reason for a notification.
2023-02-05 17:20:00 +13:00
Scott Mansell
271ffde71d
Prevent WaitForCompletion shutdown deadlock.
...
Adjust shutdown order to prevent potential deadlocks
when one thread calls Shutdown, and another calls WaitForCompletion.
2023-02-05 17:17:16 +13:00
Scott Mansell
9c012b09b3
Address review feedback
2023-02-05 16:52:53 +13:00
Pokechu22
a244cb868b
DSPTool: Fix missing error when redefining labels
...
The logging was broken in 958cbf38a4
(DSPTool doesn't use dolphin's logging system, so it just produced nothing; the same thing affected comparing before 693a29f8ce
).
AssemblerError::LabelAlreadyExists (previously ERR_LABEL_EXISTS) simply was never used.
2023-02-04 17:31:06 -08:00
Scott Mansell
7c4fcc30a3
WorkQueueThread: provide name and function at same time
2023-02-04 15:56:27 +13:00
Scott Mansell
6594532f10
WorkQueueThread: rework Cancel/Shutdown workflow
...
- Cancel doesn't shut down anymore.
Allowing it to be used multiple times thoughout the life of
the WorkQueue
- Remove Clear, so we only have Cancel semantics
- Add IsCancelling so work items can abort early if cancelling
- Replace m_cancelled and m_thread.joinable() guars with m_shutdown.
- Rename Flush to WaitForCompletion (As it's ambiguous if a function
called flush should be blocking or not)
- Add documentation
2023-02-04 14:58:12 +13:00
Scott Mansell
acdb0c5be1
WorkQueueThread: Implement thread name
...
Otherwise we will end up with a dozen threads named "WorkQueueThread"
2023-02-04 14:58:12 +13:00
Robin Kertels
94a0c50bf8
WorkQueueThread: Rework without Flags/Events
2023-02-04 14:31:16 +13:00
Robin Kertels
9affbfe683
WorkQueueThread: Implement proper Flush
...
and rename the existing Flush to FlushOne.
2023-02-04 14:31:16 +13:00
Robin Kertels
9badcc6eb8
WorkQueueThread: Add Push
2023-02-04 14:31:16 +13:00
Scott Mansell
512273a507
WorkQueueThread: Add flush capability
2023-02-04 14:31:16 +13:00
Sam Belliveau
4a97dc7c81
Let VI Skip work if variance > fallback
2023-02-02 20:59:17 -05:00
Sam Belliveau
87d5d39dfe
Set VI Skip Activation to Half The Audio Buffer
2023-02-02 20:55:13 -05:00
Joshua de Reeper
680db55239
Android: Add Skylanders Portal
...
Co-Authored-By: Charles Lombardo <clombardo169@gmail.com>
2023-02-02 21:16:14 +13:00
Pierre Bourdon
c92de420ef
lint: update to clang-format-13
2023-02-02 04:56:08 +01:00
Admiral H. Curtiss
69b178e95f
Merge pull request #11157 from h3xx/use-gnuinstalldirs
...
Use GNUInstallDirs for installation paths
2023-02-01 19:35:46 +01:00
Admiral H. Curtiss
e55a0f4fff
Merge pull request #11495 from OatmealDome/android-cmake
...
Android: Don't enforce a particular CMake version
2023-02-01 19:35:09 +01:00
Charles Lombardo
2ec7577788
Android: Fix settings being editable when marked otherwise
2023-02-01 00:51:48 -05:00
OatmealDome
234de8af09
UICommon: Don't check the registry key or use the old user directory path on Windows builds for Steam
2023-01-31 17:57:09 -05:00
OatmealDome
7240290382
CommonPaths: Add Steam-specific user directory
2023-01-31 17:57:09 -05:00
OatmealDome
59a44bea50
CommonPaths: Split platform-specific definitions for user directories into two blocks
2023-01-31 17:57:09 -05:00
OatmealDome
af33d4f13f
CommonPaths: Split PORTABLE_USER_DIR into "portable" and "embedded" to accomodate macOS
2023-01-31 17:57:09 -05:00
OatmealDome
7f962a4146
UICommon: Use NORMAL_USER_DIR for Windows
2023-01-31 17:57:09 -05:00
OatmealDome
5e3d77adae
CommonPaths: Rename DOLPHIN_DATA_DIR to NORMAL_USER_DIR
2023-01-31 17:57:08 -05:00
OatmealDome
846eef2a05
CommonPaths: Rename USERDATA_DIR to PORTABLE_USER_DIR
2023-01-31 17:57:08 -05:00
Pierre Bourdon
2a2ee5d543
Merge pull request #11434 from momocaoo/graphics-mod-folder-button
...
DolphinQt: Add button to open graphics mod folder on settings
2023-01-31 14:35:21 +01:00
Scott Mansell
e98ab0784d
Merge pull request #11501 from iwubcode/abstract_texture_load_specify_layer
...
VideoBackends: add a way to load data into a specific level AND layer
2023-02-01 00:03:59 +13:00
Scott Mansell
c6b851c2b6
Merge pull request #11506 from phire/cmake_fixes
...
CMake/MSVC fixes
2023-01-31 23:53:31 +13:00
Scott Mansell
12431a83ba
Merge pull request #11435 from techydude0713/wc24-utc-fix
...
NetKDTime: Use UTC based timestamp instead of localtime.
2023-01-31 23:40:15 +13:00
Scott Mansell
6bb2e4d706
CMake/MSVC: Fix warnings about conflicting /Zi and /Z7
2023-01-31 23:21:07 +13:00
Scott Mansell
854a73dee0
CMake/MSVC: Fix PCH disabled build
2023-01-31 23:21:07 +13:00
Scott Mansell
1956ce151f
Cmake/MSVC: Fix Qt6 discover for IDEs other than Visual Studio
...
CMakeSettings.json is a Visual Studio only extention to cmake that isn't
supported anywhere else. Not even Visual Studio Code.
So we set CMAKE_PREFIX_PATH inside DolphinQt's CMakeLists.txt instead.
2023-01-31 23:19:46 +13:00
OatmealDome
0f037a1af8
Merge pull request #10864 from TellowKrinkle/BetterLogicBlend
...
VideoCommon: Better logic op invert approximation
2023-01-31 01:55:55 -05:00
Scott Mansell
b753641dd4
Add some descriptions to new classes
2023-01-31 19:41:24 +13:00
Scott Mansell
abfc75f362
Cleanup headers
2023-01-31 19:41:24 +13:00
Scott Mansell
ec8f46b02c
Expose Renderer's Framecount
...
We don't want to move it, because we want to complete
this refactor without changing savestate version
2023-01-31 19:41:24 +13:00
Scott Mansell
3be63221c7
Renderer still needs to track swaps for savestates
2023-01-31 19:41:24 +13:00
Scott Mansell
3ae78b8e76
Also use events for config changed
2023-01-31 19:41:24 +13:00
Scott Mansell
0da69055d9
Split out everying remaining from Swap
2023-01-31 19:41:24 +13:00
Scott Mansell
2a18b34a73
Wire up frame before/after events
2023-01-31 19:41:24 +13:00
Scott Mansell
154cb4f722
Introduce an Event system to VideoCommon
...
A lot of the remaining complexity in Renderer is the massive Swap function
which tries to handle a bunch of FrameBegin/FrameEnd events.
Rather than create a new place for it. This event system will try
to distribute it all over the place
2023-01-31 19:41:24 +13:00
Scott Mansell
d6cd8de1a7
Delete unused EFBHasAlphaChannel function
2023-01-31 19:41:24 +13:00
Scott Mansell
9d125a6e43
Move ConfigChanged out of RenderBase
...
There is this nice VideoConfig file that's perfect for it
2023-01-31 19:41:24 +13:00
Scott Mansell
ca5ec13e13
Move GraphicsMod out of RenderBase
2023-01-31 19:41:24 +13:00
Scott Mansell
55d15bdd6e
Move utiltily drawing out of RenderBase
2023-01-31 19:41:24 +13:00
Scott Mansell
99d3e489ea
Move BoundingBox out of RenderBase
...
They were essentially just pass-though methods
2023-01-31 19:41:24 +13:00
Scott Mansell
35a69cb1bb
Fix missing include
2023-01-31 19:41:24 +13:00
Scott Mansell
8ad59f8ccf
Add AbstractGfx for DX12
2023-01-31 19:41:24 +13:00
Scott Mansell
5a2d119bda
Implement AbstractGfx for Dx11
2023-01-31 19:41:24 +13:00
Scott Mansell
8bc8e43dd6
Add virtual Initialize() to PerfQueryBase
...
Both DX12 and Vulkan already had one.
2023-01-31 19:41:24 +13:00
Scott Mansell
3c73707dfe
Fix dead code.
2023-01-31 19:41:24 +13:00
Scott Mansell
eaae5b4a45
Implement AbstactGfx for Metal
2023-01-31 19:41:24 +13:00
Scott Mansell
89d9ec0a84
Fix warning
2023-01-31 19:41:24 +13:00
Scott Mansell
b007b8e104
Replace BeginUI/EndUI
2023-01-31 19:41:24 +13:00
Scott Mansell
18c799f0b6
Present: Set surface info before initializing ImGui
...
Otherwise you get subtle bugs in vulkan that take hours to track down.
2023-01-31 19:41:24 +13:00
Scott Mansell
06ae08ca8b
Fix misnamed local variable
2023-01-31 19:41:24 +13:00
Scott Mansell
f158ff300b
Handle VideoSoftware's present fallback better
...
Not a good idea to abuse bSupportsPostProcessing
2023-01-31 19:41:24 +13:00
Scott Mansell
26e00c3bb4
Fix warning about using & with bools
2023-01-31 19:41:23 +13:00
Scott Mansell
74d3b3443a
Fix warning about compare sign mismatch
2023-01-31 19:41:23 +13:00
Scott Mansell
8f5b196019
Minimise include polution from RenderState
2023-01-31 19:41:23 +13:00
Scott Mansell
2a2014af09
Implement AbstractGfx for Vulkan
2023-01-31 19:41:23 +13:00
Scott Mansell
58b70b2fb2
Don't set common globals from Video Backends
2023-01-31 19:41:23 +13:00
Scott Mansell
d37f83ffeb
Implement AbstractGfx for Software & Null
2023-01-31 19:41:23 +13:00
Charles Lombardo
be8cbe3c66
Merge pull request #11513 from JosJuice/android-scaled-int-setting
...
Android: Create ScaledIntSetting class
2023-01-31 01:05:36 -05:00
Scott Mansell
f0336a3129
Implement AbstractGfx for OpenGL
...
Mostly involves moving contents of OGLRender
to OGLGfx and OGLConfig
2023-01-31 18:46:04 +13:00
Scott Mansell
8a23629345
Split AbstractGfx out of Renderer
...
Almost all the virtual functions in Renderer are part of dolphin's
"graphics api abstraction layer", which has slowly formed over the
last decade or two.
Most of the work was done previously with the introduction of the
various "AbstractX" classes, associated with texture cache cleanups
and implementation of newer graphics APIs (Direct3D 12, Vulkan, Metal).
We are simply taking the last step and yeeting these functions out
of Renderer.
This "AbstractGfx" class is now completely agnostic of any details
from the flipper/hollywood GPU we are emulating, though somewhat
specialized.
(Will not build, this commit only contains changes outside VideoBackends)
2023-01-31 18:46:02 +13:00
Scott Mansell
e57eb04ed3
Rename FrameDump.{cpp,h} to FrameDumpFFMpeg.{cpp,h}
...
The name kind of conflicts with a new FrameDumper class
2023-01-31 18:45:29 +13:00
Scott Mansell
0d4537d60f
Move Presenting, Dumping and ImGui out of Renderer
2023-01-31 18:45:21 +13:00
Scott Mansell
c38c76abad
Refactor to remove virtual from RenderXFBToScreen
...
Slightly simplifies the upcoming refactor
2023-01-31 18:29:47 +13:00
Scott Mansell
a01d5283ec
TextureCache: Add content locking
...
Texture cache occasionally mutates textures for efficiency.
Which is awkward if we want to borrow those textures from texture cache
to do something else, such as a graphics debugger, or async presentation
on another thread.
Content locking provides a way to signal that the contents of a texture
cache entry should not change. Texture cache will be forced to use
alternative strategies.
2023-01-31 18:29:47 +13:00
Scott Mansell
606c18210d
TextureCache: Refactor with smart pointers
...
The whole ownership model was getting a bit of a mess, with a some
of special cases to deal with. And I'm planning to make it even more
complex in the future.
So here is some upfront work to convert it over to reference counted
pointers.
2023-01-31 18:29:47 +13:00
Scott Mansell
c1fd4a2013
Move TCacheEntry out of TextureCacheBase
...
Allows for fowards declaration
2023-01-31 18:29:47 +13:00
Pierre Bourdon
2843cd10a8
Merge pull request #11492 from mandar1jn/file-improvements
...
Improve the data in the first data block of the skylanders figures
2023-01-31 03:02:39 +01:00
Charles Lombardo
12b8b44a08
Android: Simplify the grid options dialog fragment
2023-01-30 17:09:16 -05:00
JosJuice
c63eb75435
Merge pull request #11520 from lioncash/undefined
...
Common/Network: Resolve -Wexpansion-to-defined warning
2023-01-30 21:17:11 +01:00
TellowKrinkle
600ad5f498
VideoCommon: Better logic op invert approximation
2023-01-30 14:04:37 -06:00
JosJuice
43194b2742
Merge pull request #11519 from lioncash/android
...
AndroidCommon: Make use of std::string_view where applicable
2023-01-30 20:21:44 +01:00
Lioncash
cdd3e636e1
Common/Network: Resolve -Wexpansion-to-defined warning
...
Macros that expand to include the standard define macro are undefined.
This is pretty trivial to fix. We can just do the test and then define
the name itself if it's true, rather than making the set of definition
checks the macro itself.
2023-01-30 14:20:56 -05:00
JosJuice
2e8ad9f105
Android: Create ScaledIntSetting class
...
A little refactoring to cut down on the size of the very big
SettingsFragmentPresenter class.
I ended up adding a bunch of @NonNull annotations in various settings
classes so I could make the parameters `Settings` instead of `Settings?`
in the new Kotlin code.
2023-01-30 20:07:09 +01:00
JosJuice
f0b833a639
Merge pull request #11518 from t895/deprecated-setting
...
Android: Remove unused force filtering setting
2023-01-30 19:56:44 +01:00
Charles Lombardo
96bc0a3063
Android: Remove unused force filtering setting
2023-01-30 13:38:39 -05:00
JosJuice
65c782b3b9
Merge pull request #11517 from t895/slider-setting-adjustment
...
Android: Set each slider step size manually
2023-01-30 19:32:18 +01:00
Lioncash
5c1954c843
AndroidCommon: Make use of std::string_view where applicable
...
Several of these can take a string_view rather than needing to
specifically use std::string.
2023-01-30 13:30:52 -05:00
Charles Lombardo
26c8440ae1
Android: Set each slider step size manually
2023-01-30 13:17:02 -05:00
Lioncash
f20790370a
Core/ActionReplay: Make use of std::span where applicable
...
Generifies the interface a little by not strictly requiring the use of
std::vector.
2023-01-30 13:02:09 -05:00
Lioncash
adb4c0492d
Core/GeckoCode: Make use of std::span where applicable
...
Generifies the interface a little by not strictly requiring the use of
std::vector.
2023-01-30 12:53:50 -05:00
Dan Church
81388eedaa
Use GNUInstallDirs for installation paths
2023-01-30 09:44:44 -06:00
Mandar1jn
c8a91abadc
Improve the data in the first data block of the skylanders figures
...
* Added NUID
* Added BCC
* Added ATQA
* Added SAK
2023-01-30 16:29:20 +01:00
Admiral H. Curtiss
df9ba70c35
Merge pull request #11507 from phire/Wnullablitly-completeness
...
Ignore nullability-completeness warnings in VMA
2023-01-30 10:03:49 +01:00
Admiral H. Curtiss
ae712c61c2
Merge pull request #11500 from iwubcode/vulkan_copy_rectangle_one_layer
...
VideoBackends: update Vulkan's 'CopyRectangleFromTexture' to copy one layer
2023-01-30 10:03:33 +01:00
Admiral H. Curtiss
e48424065b
Merge pull request #10839 from CasualPokePlayer/fix_sysconf_settings
...
Fix SYSCONF movie settings
2023-01-30 09:50:21 +01:00
Admiral H. Curtiss
1eb69ea0a0
Merge pull request #10936 from TellowKrinkle/FixIncludeDirs
...
CMake: Actually use the include directories specified by dependencies
2023-01-30 09:19:06 +01:00
Admiral H. Curtiss
fa1fec7d48
Merge pull request #11510 from TellowKrinkle/FmtImport
...
CMake: Use imported target for fmt in tests
2023-01-30 09:10:22 +01:00
Admiral H. Curtiss
071ee3d85e
Merge pull request #11512 from JosJuice/android-mem2-crash
...
Android: Fix crash when attempting to change MEM2 size
2023-01-30 09:07:56 +01:00
Admiral H. Curtiss
8edca2039e
Merge pull request #10947 from Zopolis4/opensleuth
...
Restrict OpenSLES to Android via CMake
2023-01-30 09:02:45 +01:00
Pierre Bourdon
a2f4606d33
Merge pull request #11205 from TellowKrinkle/AutoPresent
...
VideoBackends:Metal: Default to presentDrawable when vsync is on
2023-01-30 09:01:18 +01:00
Scott Mansell
6d7303993c
Merge pull request #11509 from Sam-Belliveau/improved-speed-counter
...
Tie Speed to CPU Speed and not VPS
2023-01-30 20:41:03 +13:00
JosJuice
00fdf1ddce
Android: Fix crash when attempting to change MEM2 size
...
The step size for the slider ended up being 10, but Android wanted it
to be a divisor of the slider's range (which is 128 - 64 = 64).
2023-01-29 23:35:54 +01:00
TellowKrinkle
07e98c7790
CMake: Use imported target for fmt in tests
...
This properly adds the header include paths when using system fmt
2023-01-29 14:37:54 -06:00
TellowKrinkle
e4e425b930
VideoBackends:Metal: Assert on pipelines with no render targets
...
This only actually fails on specific Metal drivers, this way doing it will actually fail the CI and we'll notice
2023-01-29 14:36:28 -06:00
TellowKrinkle
1119a9ba32
VideoCommon: Don't create pipelines with no render targets
...
Some backends don't like it when you do that
2023-01-29 14:35:23 -06:00
Sam Belliveau
ebf114aef5
Tie Speed to CPU Speed and not VPS
2023-01-29 13:33:48 -05:00
Scott Mansell
6ad182edd9
Ignore nullability-completeness warnings in VMA
...
These cause a lot of warnings when compiling with clang.
And the example VmaUsage.h appears to disable them
2023-01-30 03:11:51 +13:00
Pierre Bourdon
2eda76cffc
Merge pull request #11474 from MayImilae/cleanup-remove-cdutils
...
Cleanup: Remove CDUtils
2023-01-29 09:50:32 +01:00
Pierre Bourdon
05b77925cb
Merge pull request #11460 from t895/reveal-settings
...
Android: Reveal several hidden settings
2023-01-29 07:00:38 +01:00
Pokechu22
3b4e17292d
Revert "DSPLLE: Add assertion for bad DMA alignment"
...
This reverts commit e140516130
. This assert triggers for AX and AXWii uCode games (including the Wii System Menu) for various addresses that seem to be 4-byte aligned. Worse still, if the DSP thread is in use (i.e. for DSP LLE recompiler, but not for DSP LLE interpreter), Dolphin completely hangs after the panic alert. Perhaps the data DMA has fewer restrictions compared to the instruction DMA?
The change to DSPTool (e391a28102
) has not been reverted, as it still fixes broken behavior for DSPSpy at -O0 on real hardware.
2023-01-28 17:26:47 -08:00
JosJuice
e27339039c
PPCAnalyst: Actually check if instructions want CR
2023-01-28 20:16:17 +01:00
JosJuice
9d2c4aa325
PPCAnalyst: Use bitsets for CR analysis
...
Currently we're only performing CR analysis for CR0 and CR1, but I
would like to do it for all CRs. Bitsets are appropriate for this.
2023-01-28 20:16:16 +01:00
JosJuice
3b57fb1d21
PPCTables: Add new instruction flags for CR
2023-01-28 20:16:16 +01:00
JosJuice
3e21ba55f1
Merge pull request #11496 from t895/analytics-dialog-kotlin
...
Android: Convert analytics dialog to Kotlin
2023-01-28 20:03:49 +01:00
MayImilae
37859ec1da
Cleanup: Remove CDUtils
...
This is a cleaning followup for #11456 .
2023-01-28 03:50:57 -08:00
iwubcode
7bea39b39e
VideoBackends: add a way to load data into a specific level AND layer, default to layer 0
2023-01-27 18:46:53 -06:00
iwubcode
271c60781b
VideoBackends: update Vulkan's 'CopyRectangleFromTexture' to copy one layer, copying more than one layer doesn't make sense given that we provide both the source/destination layer
2023-01-27 18:41:52 -06:00
Admiral H. Curtiss
be2d394b8c
GDBStub: Avoid ppcState global.
2023-01-27 15:22:48 +01:00
Admiral H. Curtiss
dd9907ed93
PatchEngine: Avoid ppcState global.
2023-01-27 15:22:48 +01:00
Admiral H. Curtiss
4c349caabd
MIOS: Avoid ppcState global.
2023-01-27 15:22:48 +01:00
Admiral H. Curtiss
ed633476e6
IOS: Avoid ppcState global.
2023-01-27 15:22:47 +01:00
Admiral H. Curtiss
0a0b4d325f
HW/SystemTimers: Avoid ppcState global.
2023-01-27 15:22:47 +01:00
Admiral H. Curtiss
a784fe1f2f
HW/ProcessorInterface: Avoid ppcState global.
2023-01-27 15:22:47 +01:00
Admiral H. Curtiss
884130f95c
HW/Memmap: Avoid ppcState global.
2023-01-27 15:22:47 +01:00
Admiral H. Curtiss
2bf72de43d
HW/GPFifo: Avoid ppcState global.
2023-01-27 15:22:47 +01:00
Admiral H. Curtiss
e2f7855b0e
HW/DSP: Avoid ppcState global.
2023-01-27 15:22:47 +01:00
Admiral H. Curtiss
18d9ec75f1
HW/CPU: Avoid ppcState global.
2023-01-27 15:22:47 +01:00
Admiral H. Curtiss
078a460446
HW/AudioInterface: Avoid ppcState global.
2023-01-27 15:22:46 +01:00
Admiral H. Curtiss
b52e8fd295
HLE_OS: Avoid ppcState global.
2023-01-27 15:22:46 +01:00
Admiral H. Curtiss
7fd552081f
HLE function hooking: Avoid ppcState global.
2023-01-27 15:22:46 +01:00
Admiral H. Curtiss
30de91d843
GeckoCode: Avoid ppcState global.
2023-01-27 15:22:46 +01:00
Admiral H. Curtiss
1a826b27a6
FifoPlayer: Avoid ppcState global.
2023-01-27 15:22:46 +01:00
Admiral H. Curtiss
8adabb86cf
Debugger: Avoid ppcState global.
2023-01-27 15:22:45 +01:00
Admiral H. Curtiss
bfc951311f
CheatSearch: Avoid ppcState global.
2023-01-27 15:22:45 +01:00
Admiral H. Curtiss
bbdfb4bc14
CodeTrace: Avoid ppcState global.
2023-01-27 15:22:45 +01:00
Admiral H. Curtiss
41ad0490f0
CoreTiming: Avoid ppcState global.
2023-01-27 15:22:45 +01:00
Admiral H. Curtiss
94455ee9e1
Boot: Avoid ppcState global.
2023-01-27 15:22:45 +01:00
Admiral H. Curtiss
51e7980d95
Core: Add PowerPCState reference to System.
2023-01-27 15:22:44 +01:00
Admiral H. Curtiss
485bba238e
PowerPC: Add PowerPCState parameter to UpdatePerformanceMonitor().
2023-01-27 15:22:44 +01:00
Admiral H. Curtiss
61ba516570
PowerPC: Move a few functions to PowerPCState.
2023-01-27 15:22:44 +01:00
Admiral H. Curtiss
0dcf228aaf
PowerPC: Parametrize TU macro.
2023-01-27 15:22:44 +01:00
Admiral H. Curtiss
a7d3315b4f
PowerPC: Parametrize TL macro.
2023-01-27 15:22:44 +01:00
Admiral H. Curtiss
2f241856b6
PowerPC: Add PowerPCState parameter to GQR macro.
2023-01-27 15:22:44 +01:00
Admiral H. Curtiss
814c01162a
PowerPC: Remove SPRG0/1/2/3 macros.
2023-01-27 15:22:43 +01:00
Admiral H. Curtiss
2f8b3ac1b7
PowerPC: Parametrize SRR1 macro.
2023-01-27 15:22:43 +01:00
Admiral H. Curtiss
652113e6ba
PowerPC: Parametrize SRR0 macro.
2023-01-27 15:22:43 +01:00
Admiral H. Curtiss
10dabd9975
PowerPC: Remove rDEC macro.
2023-01-27 15:22:43 +01:00
Admiral H. Curtiss
c13ca271d8
PowerPC: Parametrize CTR macro.
2023-01-27 15:22:43 +01:00
Admiral H. Curtiss
0a343007cb
PowerPC: Parametrize LR macro.
2023-01-27 15:22:43 +01:00
Admiral H. Curtiss
0f301829d2
PowerPC: Remove rPS macro.
2023-01-27 15:22:42 +01:00
Admiral H. Curtiss
0cd4a226d2
PowerPC: Remove rSPR macro.
2023-01-27 15:22:42 +01:00
Admiral H. Curtiss
27ce432012
PowerPC: Remove rGPR macro.
2023-01-27 15:22:42 +01:00
Admiral H. Curtiss
8fccefa3aa
PowerPC: Remove GPR macro.
2023-01-27 15:22:42 +01:00
Admiral H. Curtiss
ba1b624e1b
PowerPC: Remove MSR macro.
2023-01-27 15:22:42 +01:00
Admiral H. Curtiss
4b6b8fa1ae
PowerPC: Remove FPSCR macro.
2023-01-27 15:22:41 +01:00
Admiral H. Curtiss
2f3187eba9
PowerPC: Remove NPC macro.
2023-01-27 15:22:41 +01:00
Admiral H. Curtiss
be8d0b76ca
PowerPC: Remove PC macro.
2023-01-27 15:22:41 +01:00
Admiral H. Curtiss
82f3170876
PowerPC: Parametrize THRM1/2/3 macros.
2023-01-27 15:22:41 +01:00
Admiral H. Curtiss
8bab3ac755
PowerPC: Parametrize MMCR1 macro.
2023-01-27 15:22:41 +01:00
Admiral H. Curtiss
126590c4cd
PowerPC: Parametrize MMCR0 macro.
2023-01-27 15:22:40 +01:00
Admiral H. Curtiss
38529a2d8d
PowerPC: Parametrize DMAL macro.
2023-01-27 15:22:40 +01:00
Admiral H. Curtiss
2374365274
PowerPC: Parametrize DMAU macro.
2023-01-27 15:22:40 +01:00
Admiral H. Curtiss
31483e492e
PowerPC: Parametrize HID4 macro.
2023-01-27 15:22:40 +01:00
Admiral H. Curtiss
6f0ab1b33e
PowerPC: Parametrize HID2 macro.
2023-01-27 15:22:40 +01:00
Admiral H. Curtiss
49eeb986c6
PowerPC: Parametrize HID0 macro.
2023-01-27 15:22:40 +01:00
Charles Lombardo
ab817dcaed
Android: Convert Analytics to Kotlin
2023-01-26 21:14:35 -05:00
Charles Lombardo
14c7d81b54
Android: Create analytics dialog fragment
2023-01-26 20:42:39 -05:00
OatmealDome
a534af4dd6
Android: Don't enforce a particular CMake version
2023-01-26 18:46:31 -05:00
Pierre Bourdon
f056cec859
Merge pull request #11480 from Pokechu22/dsp-code-alignment
...
DSPLLE: Add assertion for bad DMA alignment
2023-01-26 23:17:09 +01:00
Pierre Bourdon
9c9310bf44
Merge pull request #11208 from TellowKrinkle/CPUCull
...
Cull vertices on the CPU
2023-01-26 23:15:23 +01:00
Pierre Bourdon
c6a7465529
Merge pull request #11485 from MayImilae/remove-filepath-from-states-messaging
...
Remove Filepath from State Save/Load OSD Messages
2023-01-26 05:29:21 +01:00
Lioncash
0d93a31a38
Common/BitSet: Zero initialize data member
...
Gets rid of the need to remember to initialize them in the constructor,
except when overriding the default initializer.
2023-01-25 04:16:30 -05:00
Lioncash
6446fa7e48
Common/Bitset: Make initializer_list constructor constexpr
...
This was able to be constexpr since C++14.
2023-01-25 04:13:05 -05:00
TellowKrinkle
7413be1487
VideoCommon: Add configuration option for CPUCull
2023-01-25 02:21:56 -06:00
TellowKrinkle
a0e6d7c173
VideoCommon: Explicitly disable fp_contract for CPUCull
2023-01-25 02:21:56 -06:00
TellowKrinkle
1be0149146
VideoCommon: Cull vertices on the CPU
2023-01-25 02:21:56 -06:00
TellowKrinkle
b170ef9651
VideoCommon: Add class for quickly transforming and culling vertices on the CPU
2023-01-25 02:21:56 -06:00
Admiral H. Curtiss
6db2171fd0
Merge pull request #11488 from lioncash/point
...
StringUtil: Make StringUTF8CodePointCount take string_view
2023-01-25 02:33:22 +01:00
Admiral H. Curtiss
9fc959cab0
Merge pull request #11489 from lioncash/init
...
CoreTiming: Zero initialize all CoreTimingManager throttle members
2023-01-25 02:29:32 +01:00
Lioncash
3607c1dc7d
CoreTiming: Zero initialize all CoreTimingManager throttle members
...
Gives two members without explicit initialization default values to be
consistent with the rest of the class and also ensuring deterministic
values on construction.
2023-01-24 17:20:08 -05:00
Pierre Bourdon
6fad8ac389
Merge pull request #11467 from Simonx22/remove-titlebar-fps-counter
...
Core: Remove FPS, VPS and speed percentage from window title
2023-01-24 23:04:29 +01:00
Lioncash
1d03835c5d
StringUtil: Make StringUTF8CodePointCount take string_view
...
There's nothing really about this that would need to constrain it to
only std::string instances.
2023-01-24 16:55:43 -05:00
Lioncash
e5b91f00b0
Common: Replace StringBeginsWith/StringEndsWith with std equivalents
...
Obsoletes these functions in favor of the standard member functions
added in C++20.
2023-01-24 14:58:20 -05:00
Mai
ba6ee9d7ba
Merge pull request #11413 from t895/sample-window-slider
...
Android: Add slider for Performance Sample Window
2023-01-24 17:22:11 +00:00
Mai
f4a8f80228
Merge pull request #11482 from t895/rtl-fixes
...
Android: Fix RTL layout in several views
2023-01-24 16:52:06 +00:00
Mai
cb55921971
Merge pull request #11443 from t895/agp-upgrade-eel
...
Android: Update build tools and dependencies
2023-01-24 16:50:40 +00:00
Mai
b6d2cf5e30
Merge pull request #11483 from t895/grid-option-fix
...
Android: Fix grid options menu string
2023-01-24 16:49:19 +00:00
Mai
5525f011be
Merge pull request #11436 from shuffle2/msvc-Zc
...
msvc: update c++ conformance flags
2023-01-24 16:46:14 +00:00
MayImilae
ed121ee679
Removed filepath from State Save/Load OSD messages
...
Though less important compared to #11470 , save states also show the full path in the OSD message and could potentially dox a streamer who is playing in Dolphin. This is a simple fix - it removes the path from the message and only displays the file name.
2023-01-24 07:55:58 -08:00
Charles Lombardo
c3a1a7d924
Android: Fix rtl layout in cheat details fragment
2023-01-24 08:41:20 -05:00
Charles Lombardo
7741046e6f
Android: Fix rtl layout for about dialog
2023-01-24 08:41:20 -05:00
Charles Lombardo
8d5967ad87
Android: Fix rtl layout on game details dialog
2023-01-24 08:41:20 -05:00
Charles Lombardo
d61dbd06a6
Android: Fix rtl layout for cheat warning fragment
2023-01-24 08:25:47 -05:00
Charles Lombardo
2904e28d91
Android: Fix rtl layout for cheat list items
2023-01-24 08:25:47 -05:00
Charles Lombardo
3fa08833ff
Android: Fix rtl layout for multiple settings activity views
2023-01-24 08:25:47 -05:00
Charles Lombardo
dc11180784
Android: Fix rtl layout for control dialogs
2023-01-24 08:25:47 -05:00
Charles Lombardo
3e1a096f7f
Android: Fix rtl layout in convert activity
2023-01-24 08:25:47 -05:00
Charles Lombardo
82d0501fc8
Android: Fix rtl layout for in-game menu fragment
2023-01-24 08:25:47 -05:00
Charles Lombardo
9bccf58fdb
Android: Fix rtl layout for grid options dialog
2023-01-24 08:25:47 -05:00
Charles Lombardo
ab0ab1aa7d
Android: Fix rtl layout in riivolution boot activity
2023-01-24 08:25:47 -05:00
Charles Lombardo
b35ee27568
Android: Fix rtl layout in user data activity
2023-01-24 08:25:47 -05:00
Charles Lombardo
cd7251cd3a
Android: Fix rtl layout on card_game
2023-01-24 08:25:46 -05:00
Shawn Hoffman
a184d70193
convert File::ScanDirectoryTree to std::filesystem
2023-01-24 05:15:11 -08:00
Shawn Hoffman
7e6436db34
fileutil: use std::filesystem
2023-01-24 04:51:24 -08:00
Pierre Bourdon
014d0573b8
Merge pull request #11455 from t895/about-dialog
...
Android: Add about dialog
2023-01-24 13:16:15 +01:00
Pierre Bourdon
caca662dbf
Merge pull request #10994 from shuffle2/fs
...
get rid of HAS_STD_FILESYSTEM
2023-01-24 12:18:25 +01:00
Admiral H. Curtiss
d4d6f3db63
Merge pull request #11331 from deReeperJosh/skylandersportal
...
Emulate Skylanders Portals within Dolphin
2023-01-24 06:56:00 +01:00
Admiral H. Curtiss
7002831c55
Merge pull request #11465 from OatmealDome/qt6-xinput-bug
...
DolphinQt: Add workaround for Qt 6.3+ bug on Linux
2023-01-24 06:21:19 +01:00
Joshua de Reeper
c76d2c16eb
Valid block/num checks, rename variables, remove translatable strings
...
Capitalize Skylander in tr strings
Lint and validation method fixes
Proper Attach and Change Interface method
Re-jig code to exit early and read easier
2023-01-24 18:12:24 +13:00
Charles Lombardo
82de765106
Android: Fix grid options menu string
...
Previously the string was "Settings" and not "Grid Options"
2023-01-23 23:44:46 -05:00
Pokechu22
e391a28102
DSPTool: Generate an alignment specifier
...
alignas is a C++ keyword since C++11, and can be used in C with a header too (although I don't know the details).
2023-01-23 15:30:49 -08:00
Pokechu22
e140516130
DSPLLE: Add assertion for bad DMA alignment
...
I haven't tested this extensively on real hardware, but I do know that bad things happen if the address isn't properly aligned, and libogc says it should be 32-byte aligned.
2023-01-23 15:20:49 -08:00
Simonx22
df6f070a55
Core: Remove FPS, VPS and speed percentage from window title
2023-01-23 21:32:50 +01:00
JosJuice
d0da689eeb
DolphinQt: Add i18n comments for strings containing the word "watches"
...
These new strings could use the same clarification as we have for
the existing string "&Delete Watch".
2023-01-23 20:49:22 +01:00
Charles Lombardo
860f56150a
Android: Add safeguards around skip ipl setting
...
A user shouldn't be able to disable "skip ipl" when they don't have a bios file. This finds the ipl file and tells the setting when toggling is allowed. Additionally, if the user previously disabled the option and then deletes their ipl file, they will be allowed to enable it but toggling will be disabled afterwards.
2023-01-23 12:48:27 -05:00
Pierre Bourdon
8d477c65c9
Merge pull request #11458 from shuffle2/winuver
...
windows: prefer os version from registry
2023-01-23 15:53:41 +01:00
Pierre Bourdon
a8a4b9c6d0
Merge pull request #11475 from shuffle2/comdef
...
windows: replace comdef dependency with winrt
2023-01-23 15:52:51 +01:00
Shawn Hoffman
e5f3a0a9bc
buildfix if discord isn't enabled
2023-01-23 06:39:41 -08:00
Shawn Hoffman
c338f9e2a1
windows: replace comdef dependency with winrt
2023-01-23 06:09:01 -08:00
Admiral H. Curtiss
8032a71c4c
Merge pull request #11471 from MayImilae/dont-update-titlebar-with-osd-messages
...
Don't Write OSD Messages to the Titlebar
2023-01-23 06:46:32 +01:00
MayImilae
9df1f0276d
Don't Write OSD Messages to the titlebar
...
Turns out all OSD messages, every single one, are written to the titlebar. We've just never seen them because the FPS is in the title bar and it replaces it in a fraction of a second. This was only visible when saving savestates because it halts emulation for a moment while writing.
This is dumb, let's not do that anymore.
2023-01-22 00:19:51 -08:00
Pierre Bourdon
0eb984f030
Merge pull request #11470 from MayImilae/remove-memory-card-path-from-osd-message
...
Remove Memory Card Path from the Wrote to OSD Message
2023-01-22 08:13:51 +01:00
MayImilae
ef0d386954
Remove Memory Card Path from the Wrote OSD Message
...
A few weeks ago, a vtuber tweeted that they had to remove a vod of their stream because Dolphin Emulator showed some personal information during the steam, and left a warning to everyone else that Dolphin shows the account name of the computer. And yea, we do, we show the full directory of the memory card every time a memory card is written, and due to mandatory Microsoft account nonsense, that is very likely to contain someone’s real name.
Fortunately this is very easy for us to solve. This change simply removes the filename from wrote memory card contents string. That’s it. All functionality of the wrote memory card OSD message remains the same, it just doesn’t say where the memory card is anymore.
There are lots of other potential solutions to this but after talking on IRC it seems the simplest one is the best.
2023-01-21 21:19:51 -08:00
Joshua de Reeper
18fd0d7dcd
Use Core timing instead of thread
...
Skylander code tidy ups
Convert c array to std::array and fix comments
Formatting fixes/review changes
Variable comment
Migrate portal to System Impl and code tidy ups
Use struct
Restore review changes
Minor fix to schedule transfer method
Change descriptors to hex and fix comments
2023-01-22 14:50:30 +13:00
Joshua de Reeper
f76a6789a0
Emulate Skylanders within Dolphin
...
Ported the code from RPCS3, with improvements made to the handling of control messages and audio transfers, Co-Authored with @mandar1jn
Missing new line chars
Co-Authored-By: mandar1jn <49076509+mandar1jn@users.noreply.github.com>
2023-01-22 14:50:30 +13:00
Pierre Bourdon
9fe1d80920
Merge pull request #11457 from delroth/remove-stable-track
...
DolphinQt/Settings: remove 'stable' track from auto-updater options
2023-01-21 06:48:04 +01:00
Pokechu22
597f8f1b87
Externals: Convert gtest to a submodule and update to v1.12.1
2023-01-20 11:43:34 -08:00
OatmealDome
d40dbe4670
DolphinQt: Add workaround for Qt 6.3+ bug on Linux
...
See https://bugs.dolphin-emu.org/issues/12913 for more information.
2023-01-20 03:06:04 -05:00
shockdude
a32b85691b
Fix Turntable extension's table range
2023-01-18 19:17:09 -08:00
Pierre Bourdon
8d5edb13a9
Merge pull request #11367 from Sam-Belliveau/lagbegone
...
VideoCommon: VI Skip
2023-01-19 01:20:01 +01:00
Charles Lombardo
b598b6ec72
Android: Add about dialog
2023-01-18 15:58:06 -05:00
Charles Lombardo
bbb83054af
Android: Expose custom rtc options
2023-01-18 01:56:05 -05:00
Charles Lombardo
d63462a14e
Android: Add missing headers
2023-01-18 01:55:39 -05:00
Charles Lombardo
6448d6dbe7
Android: Expose emulated memory size override
...
Update BooleanSetting.java
2023-01-18 01:55:39 -05:00
Pierre Bourdon
1cd11b8f3a
Merge pull request #11381 from skyfloogle/traversal-fix-1
...
Netplay: Fix traversal connections occasionally not working
2023-01-17 23:40:24 +01:00
Pierre Bourdon
a7d1683149
Merge pull request #11432 from Pokechu22/generic-vertex-loader-test-error
...
VertexLoader: Fix loading tangent/binormal caches with NormalIndex3
2023-01-17 23:30:29 +01:00
Pierre Bourdon
686ac363ba
Merge pull request #11456 from MayImilae/remove-boot-from-dvd
...
Remove Boot from DVD Backup
2023-01-17 23:27:59 +01:00
Pierre Bourdon
c527aea40d
Merge pull request #11453 from JosJuice/revert-open-user-dir-qt-hotfix
...
Revert "MenuBar: Tweak string for open user folder option"
2023-01-17 23:27:09 +01:00
John Papetti
e2db9cd142
NetKDTime: Use UTC timestamp
2023-01-17 13:59:01 -05:00
Charles Lombardo
96c8a7ee1f
Android: Expose texture filtering options
2023-01-17 11:13:02 -05:00
Charles Lombardo
23331e4367
Android: Expose frame dump compression level
2023-01-17 11:13:02 -05:00
Shawn Hoffman
dff7f20f9d
windows: prefer os version from registry
...
this value is not modified by compatibility mode
drop reporting service pack numbers. no longer used
2023-01-17 01:38:00 -08:00
Pierre Bourdon
3342947446
DolphinQt/Settings: remove 'stable' track from auto-updater options
...
We've decided this track will never be used in the future. Releases will
continue using the "beta" branch internally, though we'll have the
user-visible strings use a different name instead.
(Note: Dolphin provided builds have always defaulted to 'beta' as the
auto-update track, so anyone who set 'stable' did so manually.)
2023-01-17 08:34:55 +01:00
Charles Lombardo
6373c9225b
Android: Expose accurate cpu cache toggle
2023-01-17 01:10:46 -05:00
Charles Lombardo
bc64392692
Android: Expose pause on panic toggle
2023-01-17 01:08:40 -05:00
Pierre Bourdon
10fd768898
Merge pull request #11420 from t895/copy-profile
...
Android: Copy baseline profile during release builds
2023-01-17 04:48:30 +01:00
MayImilae
dcc10cff11
Remove Boot from DVD Backup
...
This should be a fairly easy merge, assuming I didn’t mess anything up. TL:DR no one uses it and it’s not great.
Boot from DVD Backup is an ancient feature with origins in the Megacommit. Back then, GameCube and Wii games were quite large relative to drives of the time. For example, in 2008, the most common hard drive sizes were 320GB and 512GB. On the 320GB drive I personally had at the time, as little as 42 Wii ISOs could have filled it entirely! And that’s ignoring any other files one might want to put onto a drive. Backup DVDs allowed users to burn relatively cheap DVD media and store their GameCube and Wii dumps in a Dolphin accessible way that didn’t eat into their precious HDD space. It had compromises, even then, but in 2008… I mean honestly users probably wouldn’t even notice those compromises with how Dolphin barely even worked at all back then.
Obviously, today the storage space concerns are not as big of an issue. According to seagate the average hard drive it sells today is 8TB. For typical laptops purchased now, the -minimum- selection for storage is usually 1TB. You can even buy a name brand 4TB external hard drive for $100. GC and Wii ISOs are not as big as they once were, relatively anyway. Plus flash drives and SD cards are super cheap and way faster than disc drives ever were. For anyone that has limited drive space, removable flash media can fulfill this offloading role far better than backup DVD media ever could.
Also no one has DVD drives anymore. That’s kind of an important detail.
But to see if Booting from DVD Backup even still worked, I decided to give it a try. I have an ASUS BW-16D1HT, a badass Bluray XL reading and burning drive, connected to my Windows 11 Threadripper 5975WX machine. A super fast drive on a super fast machine is as good as it possibly can get for this feature. So I bought a spindle of DVD-Rs, burned a couple of discs and gave it a try. Surprisingly, it does still work. However, as expected, it introduces a lot of stuttering. Testing Prime 1 and Prime 3, in both games stuttering was introduced whenever the DVD Drive had to suddenly seek. Spikes of 50ms occurred constantly, but I observed 150ms and even over 1000ms stutters! The worst was a three second stutter, when loading Elysia in Prime 3. I could even hear the stutters - any time the drive suddenly made a harsh seeking noise, the game would have a hard stutter. It worked but, it has some serious compromises.
Boot from DVD Backup isn’t great, using removable flash media or external hard drives is a FAR better option for anyone with limited storage space today, and no one can even use this feature anymore because their computers don’t even have disc drives. It’s time for Boot from DVD Backup to go!
So I did my best on the cleanup but I’m bound to have left some bits. Especially in translation - I didn’t get any warnings or anything there that could help point me to where to clean that up. Please review!
2023-01-16 18:32:43 -08:00
Charles Lombardo
a3b7510505
Android: Expose skip main menu toggle
2023-01-16 20:39:33 -05:00
JosJuice
716dabde96
Merge pull request #11447 from t895/save-state-fix
...
Android: Fix large strings in save/load savestate fragment
2023-01-16 19:09:37 +01:00
JosJuice
59b276ea87
Merge pull request #11448 from t895/nav-fix-api-26
...
Android: Fix navigation bar buttons appearing invisible on API 26
2023-01-16 18:45:06 +01:00
JosJuice
8f88297122
Revert "MenuBar: Tweak string for open user folder option"
...
This reverts commit 6788bda6c9
.
The user folder can be either global or local. If it is local,
we shouldn't call it global.
See also da0be24b2f
.
2023-01-16 18:31:16 +01:00
Pierre Bourdon
aacd66bd5b
Merge pull request #11451 from OatmealDome/open-user-dir-qt-hotfix
...
MenuBar: Tweak string for open user folder option
2023-01-16 10:47:27 +01:00
Pierre Bourdon
bb64b0ee44
Merge pull request #10708 from OatmealDome/win-user-dir
...
UICommon: Change default user directory location to AppData on Windows
2023-01-16 10:34:41 +01:00
OatmealDome
6788bda6c9
MenuBar: Tweak string for open user folder option
2023-01-16 04:31:12 -05:00
OatmealDome
869aa9eb55
MenuBar: Add action which opens the user folder
2023-01-16 04:08:19 -05:00
OatmealDome
cc68d5321f
UICommon: Set UserConfigPath in the registry to AppData User for backwards compatibility
2023-01-16 01:37:14 -05:00
OatmealDome
3896934d5e
UICommon: Use the old User directory in Documents if it exists
2023-01-16 01:37:14 -05:00
OatmealDome
75d87ff90e
UICommon: Change default User directory location to AppData
2023-01-16 01:37:14 -05:00
Charles Lombardo
b1e05c9125
Android: Remove pre-generated baseline profile
2023-01-15 21:16:55 -05:00
Charles Lombardo
19aa9247be
Android: Copy baseline profile during release builds
2023-01-15 21:16:55 -05:00
Scott Mansell
7c202ab411
Reset throttle on savestate load
2023-01-16 14:18:42 +13:00
Charles Lombardo
dbe03a4f76
Android: Fix navigation bar buttons appearing invisible on API 26
2023-01-15 18:36:22 -05:00
Charles Lombardo
76ca57ef2e
Android: Fix large strings in save/load savestate fragment
2023-01-15 17:49:48 -05:00
JMC47
30f0051f9c
Merge pull request #11440 from JosJuice/jit64-negative-guard
...
Core: Allocate 2 GiB of guard pages below fastmem area
2023-01-14 19:19:53 -05:00
Charles Lombardo
33c5f7a129
Android: Update benchmark module dependencies
...
Androidx JUnit 1.1.4 -> 1.1.5
Androidx Espresso 3.5.0 -> 3.5.1
2023-01-14 18:41:18 -05:00
Charles Lombardo
005d7574aa
Android: Update app module dependencies
...
Androidx Fragment 1.5.4 -> 1.5.5
Androidx AppCompat 1.5.1 -> 1.6.0
Androidx Profile Installer 1.2.1 -> 1.2.2
Core android library desugaring libraries 1.1.5 -> 2.0.0
2023-01-14 18:39:43 -05:00
Charles Lombardo
45cdc7357a
Android: Upgrade Java bytecode from 1.8 to 11
2023-01-14 18:35:32 -05:00
Charles Lombardo
27466fd5f9
Android: Upgrade AGP from 7.3.1 to 7.4.0
2023-01-14 18:30:07 -05:00
Charles Lombardo
054b2219d4
Android: Upgrade gradle from 7.5.1 to 7.6
2023-01-14 18:29:39 -05:00
JosJuice
4fa9fa997e
Core: Allocate 2 GiB of guard pages below fastmem area
...
See the comment added by this commit. We were previously guarding against
overshooting in address calculations, but not against undershooting.
Perhaps someone assumed that the displacement of an x86 loadstore was
treated as unsigned?
Note: While the comment says we can undershoot by up to 2 GiB, in
practice Jit64 as it currently behaves won't actually undershoot by more
than 0x8000 if my analysis is correct. But address space is cheap, so
let's guard the full 2 GiB.
2023-01-14 20:35:50 +01:00
JosJuice
9c90b31e6a
Memmap: Remove some remnants from the 32-bit JITs
2023-01-14 11:46:37 +01:00
JosJuice
9d350fd56b
Merge pull request #11437 from t895/grid-options-fix
...
Android: Fix grid options text borders
2023-01-14 09:42:56 +01:00
Sam Belliveau
23ad07b368
Add VISkip
2023-01-14 01:56:37 -05:00
JMC47
8a1cac9be1
Merge pull request #11348 from Sam-Belliveau/improved-pacing
...
CoreTiming: Throttle Before Every Event Using std::chrono
2023-01-13 21:52:07 -05:00
Pokechu22
3910bdd68b
VertexLoader: Don't write position_cache if vertex is skipped
...
This is the behavior in the x64 and ARM64 vertex loaders. I don't know if it makes sense (the whole skipped vertex system seems jank, but several games behave incorrectly without it).
2023-01-13 15:38:00 -08:00
Pokechu22
16c0593a52
VertexLoader: Fix loading tangent/binormal caches with NormalIndex3
2023-01-13 15:38:00 -08:00
Pokechu22
2d53b73643
VertexLoaderTester: Add assertions for position/binormal/tangent caches
2023-01-13 15:38:00 -08:00
Pokechu22
c681d96d46
VertexLoaderTester: Use asserts instead of logs
...
Logs don't show up in unit tests, and since this is debugging functionality (though not enabled for tests by default) it's better to do it this way.
2023-01-13 15:38:00 -08:00
Pokechu22
92b6446da1
UnitTests: Add custom main that calls RegisterMsgAlertHandler
...
This prevents a failed assertion from hanging on the MSVC buildbots.
2023-01-13 15:38:00 -08:00
Sam Belliveau
e849172dc9
Limit Throttling to 1200hz
2023-01-13 18:17:24 -05:00
Charles Lombardo
4f397edab3
Android: Fix grid options text borders
...
Previously on displays with a small width, text would appear under the switch. Now the text will break into a new line.
2023-01-13 17:02:53 -05:00
Charles Lombardo
937e08980e
Android: Change slider step size based on range
...
Credit to JosJuice for the slider formula
2023-01-13 16:32:09 -05:00
Charles Lombardo
e70b57fe8a
Android: Adjust width of slider value text view
2023-01-13 16:32:09 -05:00
Charles Lombardo
27e64e6855
Android: Add Performance Sample Window slider
2023-01-13 16:32:09 -05:00
Sam Belliveau
e95c1d55e8
Limit Sleep Calls to 8192hz at most
2023-01-13 11:59:32 -05:00
Shawn Hoffman
2a5c699489
msvc: note some things to enable in vs 17.5
2023-01-13 01:36:03 -08:00
Shawn Hoffman
9723dba780
msvc: set /Zc:enumTypes
2023-01-13 01:35:17 -08:00
Shawn Hoffman
07de7337eb
msvc: dont explicitly set /Zc:lambda
...
it's implied by /std
2023-01-13 01:26:23 -08:00
Momo Cao
05ed25d482
DolphinQt: Add button to open graphics mod folder on settings
2023-01-12 21:47:18 -05:00
Pokechu22
7abee1a97b
DolphinQt: Fix typo in GBA TAS input window
...
This generated a warning on GCC about the operation being potentially undefined (-Wsequence-point). I'm not sure if that was actually the case, but either way it is a mistake.
2023-01-12 14:33:58 -08:00
OatmealDome
5c80a9fd87
CMakeLists: Copy LICENSE files when building for Steam Runtime
2023-01-10 23:21:24 -05:00
OatmealDome
fff13c385f
CMakeLists: Copy entire plugins folder on Steam Runtime build
2023-01-10 23:21:24 -05:00
JosJuice
9d81c84db0
Merge pull request #11427 from UltraHDR/patch-1
...
Set LSApplicationCategoryType to games
2023-01-10 19:00:26 +01:00
Charles Lombardo
6b97b64e93
Android: Ignore workaround view height if 0
2023-01-10 12:01:54 -05:00
Shawn Hoffman
d51e4e5236
get rid of HAS_STD_FILESYSTEM
...
just use std::filesystem
2023-01-10 05:17:43 -08:00
UltraHDR
18454906cf
Set LSApplicationCategoryType to games
...
https://developer.apple.com/documentation/bundleresources/information_property_list/lsapplicationcategorytype
This makes it show up in the Launchpad Games folder
2023-01-10 11:34:42 +00:00
Charles Lombardo
7fe2faff4a
Android: Expose "Log Render Time to File" toggle
2023-01-09 23:29:31 -05:00
Charles Lombardo
f49f3441b3
Android: Disable focus on workaround view
2023-01-09 14:20:50 -05:00
Charles Lombardo
72176641ef
Android: Revert "Make the header focusable"
2023-01-09 14:20:34 -05:00
Admiral H. Curtiss
653e0ccf28
Merge pull request #11365 from iwubcode/cheat_manager_freeze_value
...
DolphinQt: add ability to lock / freeze values in the watches window
2023-01-09 18:41:28 +01:00
Admiral H. Curtiss
993d2ab173
PatchEngine: Use std::span in ApplyMemoryPatches().
2023-01-09 17:24:41 +01:00
Admiral H. Curtiss
21c29bad6b
Merge pull request #11407 from AdmiralCurtiss/globals-gpfifo
...
HW/GPFifo: Refactor to class, move to Core::System.
2023-01-09 17:09:48 +01:00
Admiral H. Curtiss
eeeab3c3be
Merge pull request #11183 from TheLordScruffy/write-back-cache
...
Implement PowerPC data cache
2023-01-09 17:09:32 +01:00
Sam Belliveau
901e4c7697
Reset Throttle Variables In Init
2023-01-09 11:06:12 -05:00
JosJuice
1af8602530
Merge pull request #11411 from t895/managed-device-update
...
Android: Update managed device for baseline profile generation
2023-01-08 13:37:41 +01:00
Sam Belliveau
f7de0e4147
Fix issue that would disable Throttling
2023-01-08 01:20:19 -05:00
TheLordScruffy
d85f6c8298
DolphinAnalytics: Remove ICACHE_MATTERS
2023-01-08 00:17:46 -05:00
TheLordScruffy
825bacde43
PPCCache: Change u32 to u8 for plru, valid, modified
2023-01-07 20:18:59 -05:00
JosJuice
dcded04719
Merge pull request #11410 from t895/fullscreen-fix
...
Android: Fix use of fullscreen modes on Cheats Activity
2023-01-07 19:27:30 +01:00
Charles Lombardo
d32cc1e5eb
Android: Fix workaround view in cheats activity
...
When using a fullscreen mode on some phones that remove the navigation bar, inset callbacks will not be fired. To account for this we set the workaround view at a height of 1px to prevent the view from filling the entire screen due to this activity using a Constraint layout.
2023-01-07 13:08:51 -05:00
TheLordScruffy
811d942222
Improve PPCCache lookup table
2023-01-07 07:30:42 -05:00
Pokechu22
d20b71c296
Move x64 DSP JIT into DolphinLib.x64.props
...
Before, it was also compiled on ARM builds, but since it was unused it wasn't linked (and thus its dependency on the nonexistent x64Emitter didn't cause any link issues).
2023-01-06 22:42:21 -08:00
Charles Lombardo
6fe46fcf03
Android: Update managed device for baseline profile generation
2023-01-06 18:33:51 -05:00
Sam Belliveau
bc1cc9eeb4
CoreTiming: Throttle Before Every Event Using Chrono
2023-01-06 17:21:17 -05:00
Charles Lombardo
4d86e44c12
Android: Add hints to allow cheats activity to be previewed
2023-01-06 15:58:29 -05:00
Sam Belliveau
588a72a4fc
PerformanceTracker: Add ownership of m_log_name.
2023-01-06 20:27:25 +01:00
Sam Belliveau
bc46089ab0
PerformanceTracker: Use shared_mutex instead of mutex so multiple threads can read at the same time.
2023-01-06 20:27:25 +01:00
Sam Belliveau
9143eb00fb
PerformanceMetrics: Fix Line Width Issue on Non HiDPI Screens
2023-01-06 20:27:17 +01:00
Admiral H. Curtiss
d33416fc35
HW/Memmap: Zero-initialize members by default.
2023-01-06 05:33:21 +01:00
Admiral H. Curtiss
fbcaf83d30
HW/GPFifo: Refactor to class, move to Core::System.
2023-01-06 05:33:21 +01:00
Mai
cc14d60bbb
Merge pull request #11402 from Pokechu22/too-many-indices
...
IndexGenerator: Fix off-by-one in GetRemainingIndices
2023-01-05 15:15:09 +00:00
Admiral H. Curtiss
7b04a6b958
Merge pull request #11089 from sepalani/pcap-share
...
NetworkCaptureLogger: Allow PCAP shared read access on Windows
2023-01-05 04:06:35 +01:00
Pokechu22
cefcd9c93c
IndexGenerator: Fix off-by-one in GetRemainingIndices
...
Fixes https://bugs.dolphin-emu.org/issues/13136 .
2023-01-04 10:42:00 -08:00
Pokechu22
6c58ba353c
IndexGenerator: Add assertion for overflow in GetRemainingIndices
...
This assertion is currently triggered by Pocoyo Racing (https://bugs.dolphin-emu.org/issues/13136 ).
2023-01-04 10:41:14 -08:00
Admiral H. Curtiss
2fdaf0a86e
HW/ProcessorInterface: Rename member variables to fit naming convention.
2023-01-04 03:17:26 +01:00
Admiral H. Curtiss
74e1577a2c
HW/ProcessorInterface: Refactor to class, move to Core::System.
2023-01-04 03:00:10 +01:00
Pokechu22
d91f340c86
VertexManagerBase: Move free space check to after the buffer is reset
...
Fixes incorrect logspam when the buffer needed to be reset on flushes (which we already were doing, but 52feed04db
moved it to after the check was made). This is https://bugs.dolphin-emu.org/issues/10312 .
I also converted it to an assert, as if this does happen, things are going to render incorrectly, so we want to make it obvious.
2023-01-03 17:06:51 -08:00
Admiral H. Curtiss
908cec04cb
Merge pull request #11396 from Pokechu22/fbfetch-analytics
...
DolphinAnalytics: Track support of framebuffer fetch
2023-01-03 18:11:17 +01:00
Admiral H. Curtiss
ed9915308b
Merge pull request #11386 from Pokechu22/manual-texture-sampling-stereoscopic-layer-bounds-check
...
PixelShaderGen: Clamp texture layer when using manual texture sampling with stereoscopic 3D
2023-01-03 18:07:06 +01:00
Pokechu22
c1b1d8d783
DolphinAnalytics: Track support of framebuffer fetch
2023-01-02 23:17:17 -08:00
Pokechu22
c645970578
VideoBackends/OGL: Always check for fbfetch support, not just on GLES
...
GL_EXT_shader_framebuffer_fetch is not restricted to GLES (although GL_ARM_shader_framebuffer_fetch is), and is available on Intel GPUs.
2023-01-02 23:17:08 -08:00
Pokechu22
277518837a
DolphinAnalytics: Track support of logic ops
2023-01-02 23:17:02 -08:00
Pokechu22
f433da6083
DolphinAnalytics: Fix comment wrapping
...
This was broken in 3570c7f03a
.
2023-01-02 23:15:04 -08:00
Admiral H. Curtiss
d949aa60bb
Merge pull request #11397 from TellowKrinkle/QuartzMousePos
...
InputCommon:QuartzKB&M: Fix mouse y coordinates
2023-01-02 23:04:12 +01:00
Admiral H. Curtiss
f13f54e3db
Merge pull request #11363 from TheConfuZzledDude/xinput2-scroll-axis
...
InputCommon/XInput2: Added an axis output for the scroll wheel
2023-01-02 23:02:12 +01:00
TheLordScruffy
9d39647f9e
Fix PPC cache code formatting
2023-01-02 02:33:57 -05:00
TellowKrinkle
8659de4d71
InputCommon:QuartzKB&M: Fix mouse y coordinates
...
Cocoa uses a different coordinate system from Carbon (Carbon's origin is the top left while Cocoa's is the bottom left)
2022-12-31 23:42:11 -06:00
Mai
20ac2cf781
Merge pull request #11375 from JosJuice/mmu-inf-write
...
PowerPC: Fix theoretically possible infinite loop in WriteToHardware
2022-12-31 18:55:11 +00:00
Mai
e31722db1c
Merge pull request #11380 from Pokechu22/performance-sample-window-title
...
AdvancedWidget: Add title for performance sample window tooltip
2022-12-31 18:54:43 +00:00
Mai
acdf76bf16
Merge pull request #11374 from JosJuice/jitarm64-breakpoints
...
JitArm64: Implement breakpoints
2022-12-31 18:53:25 +00:00
Admiral H. Curtiss
f6fbeaf355
Merge pull request #11364 from jordan-woyak/udraw-lift
...
WiimoteEmu: Expose mappings for lifted UDraw and Drawsome stylus.
2022-12-29 21:16:57 +01:00
Mai
75de461f11
Merge pull request #11393 from JosJuice/android-move-fps
...
Android: Move FPS-related settings to a submenu
2022-12-29 18:16:37 +00:00
JMC47
a20e41d340
Merge pull request #11389 from Pokechu22/sw-no-alpha-1-hack
...
Software: Remove alpha=1 blending special-case
2022-12-29 13:08:04 -05:00
JosJuice
24d7cf12a5
Android: Move FPS-related settings to a submenu
...
Back when this was just the FPS setting, having it in the top level
of the graphics settings was reasonable. But now it's seven settings.
Let's add a new submenu for them.
2022-12-29 17:34:23 +01:00
Admiral H. Curtiss
c20bb01b47
Merge pull request #11372 from JosJuice/m3u-backslash
...
Boot: Fix handling of M3U file paths containing backslashes
2022-12-29 17:09:38 +01:00
Admiral H. Curtiss
4bc94e4629
Merge pull request #11353 from noahpistilli/fix-mail-account-generation
...
Set checksum for NWC24Config during creation
2022-12-29 17:08:10 +01:00
Admiral H. Curtiss
cb0a603c72
VideoCommon: De-globalize GeometryShaderManager class.
2022-12-29 15:33:19 +01:00
Admiral H. Curtiss
a164c47caf
Core/Boot: Pass System instance to BootUp() and related.
2022-12-29 05:49:26 +01:00
Mai
7552deeff4
Merge pull request #11388 from AdmiralCurtiss/globals-vertexshadermanager
...
VideoCommon: De-globalize VertexShaderManager class.
2022-12-29 04:48:24 +00:00
Pokechu22
ed5015fa24
Software: Remove alpha=1 blending special-case
...
This was added in #10394 for both the hardware and software backends to work around an issue with Mario Kart Wii, Fortune Street, and Baten Kaitos. However, it seems like the software renderer handles blending well enough that we don't need this (and in any case, it's easy to change blending in the software renderer).
Some experimentation with #11387 (not pushed) showed that the software renderer's logic would also produce correct results on the hardware backends with this hack removed, but would require fbfetch (currently); if a better solution is found the hack can also be removed from the hardware backends.
2022-12-28 14:21:33 -08:00
JMC47
82e5f438f9
Merge pull request #11219 from K0bin/android-vk-alidation
...
VideoBackends:Vulkan: Migrate to VK_EXT_debug_utils
2022-12-28 14:16:51 -05:00
Admiral H. Curtiss
7e55cc9e90
VideoCommon/VertexShaderManager: Rename private variables.
2022-12-28 16:00:15 +01:00
Admiral H. Curtiss
50625728e0
VideoCommon: De-globalize VertexShaderManager class.
2022-12-28 15:52:29 +01:00
JosJuice
cc768b1ea3
Merge pull request #11357 from t895/elevate-ingame-fragment
...
Android: Elevate ingame menu fragment with color
2022-12-28 10:25:36 +01:00
Mai
0900e68986
Merge pull request #11384 from AdmiralCurtiss/globals-pixelshadermanager
...
VideoCommon: De-globalize PixelShaderManager class.
2022-12-28 00:59:03 +00:00
Mai
9e9910df8b
Merge pull request #11376 from JosJuice/android-delete-local-ref
...
Android: Make more meticulous use of DeleteLocalRef
2022-12-28 00:57:29 +00:00
JosJuice
b3a368ae06
Android: Add VectorToJObjectArray utility function
2022-12-27 22:59:42 +01:00
Pokechu22
f3df3a7727
PixelShaderGen: Clamp texture layer when using manual texture sampling with stereoscopic 3D
...
Otherwise, texelFetch() will use an out-of-bounds layer for game textures (that have 1 layer; EFB copies have 2 layers in stereoscopic 3D mode), which is undefined behavior (often resulting in a black image). The fast texture sampling path uses texture(), which always clamps (see https://www.khronos.org/opengl/wiki/Array_Texture#Access_in_shaders ), so it was unaffected by this difference.
2022-12-27 13:45:13 -08:00
JosJuice
0b9351c194
Android: Make more meticulous use of DeleteLocalRef
...
If we're in a function that isn't just going to immediately return to
Java, leaking local references can lead to problems eventually.
2022-12-27 22:03:44 +01:00
Admiral H. Curtiss
c8202043b6
IOS/NWC24Config: Combine WriteConfig() and WriteCBK().
2022-12-27 21:21:06 +01:00
Admiral H. Curtiss
4549fb4acb
VideoCommon/PixelShaderManager: Rename s_ variables.
2022-12-27 20:20:27 +01:00
Admiral H. Curtiss
725bd64ec2
VideoCommon: De-globalize PixelShaderManager class.
2022-12-27 20:13:24 +01:00
Sketch
929fba08e7
Fix ESDevice::GetTitlesWithTickets always returning 0 titles owned
2022-12-27 12:18:44 -05:00
Robin Kertels
19a4653203
VideoBackends:Vulkan: Replace debug_report with debug_utils
...
The former is deprecated and pretty much all modern drivers
support VK_EXT_debug_utils.
Android drivers dont support it. On those drivers,
we use the implementation provided by the validation layers.
2022-12-27 02:48:50 +01:00
Floogle
c689e9cde0
Netplay: When connecting, ignore packets from traversal server
2022-12-26 23:35:42 +01:00
Pokechu22
4e05c569d4
AdvancedWidget: Fix typo in performance sample window tooltip
2022-12-26 14:28:48 -08:00
Pokechu22
b675e49c0e
AdvancedWidget: Add title for performance sample window tooltip
2022-12-26 14:20:06 -08:00
Sam Belliveau
6052a5ca9b
Fix Speed Counter Sample Size
2022-12-26 16:47:12 -05:00
TheConfuZzledDude
288fa635f9
InputCommon/XInput2: Changed axis value reading to be more correct
2022-12-26 17:27:48 +00:00
Admiral H. Curtiss
f4b1155b4d
Merge pull request #11373 from JosJuice/gba-tas-input-turbo
...
DolphinQt: Add settings to GBA TAS input window
2022-12-26 04:37:25 +01:00
Jordan Woyak
4f4285cf5e
WiimoteEmu/DrawsomeTablet: Expose mapping for lifted stylus.
2022-12-25 19:03:15 -06:00
Jordan Woyak
ab9fc3f2e4
WiimoteEmu/UDrawTablet: Expose mapping for lifted stylus.
2022-12-25 19:03:15 -06:00
JosJuice
cf16f49068
PowerPC: Fix theoretically possible infinite loop in WriteToHardware
...
`em_address + size` can overflow and become 0. It shouldn't happen with
the kinds of memory mappings games use in practice, though.
2022-12-25 12:29:13 +01:00
JosJuice
e0fba20f1f
Merge pull request #11360 from shuffle2/vs
...
msvc: remove workaround for arm64 sha1 compiler bug
2022-12-24 22:55:47 +01:00
JosJuice
c744ff4934
JitArm64: Implement breakpoints
...
Plus two miscellaneous debugger features that I found along the way when
reading Jit64's code for comparison: bJITNoBlockLinking and tracing.
Fixes https://bugs.dolphin-emu.org/issues/13127 .
2022-12-24 13:24:01 +01:00
JosJuice
0659827485
Jit64: Check for breakpoint without disabling block link
...
Small optimization. By not calling WriteExit, the block linking system
never finds out about the exit we're doing, saving us from having to
disable block linking.
2022-12-24 13:01:29 +01:00
JosJuice
494b041b34
DolphinQt: Add settings to GBA TAS input window
...
We should expose Enable Controller Input and the turbo settings for
GBA just like we do for GameCube controllers and Wii Remotes.
I just forgot about it when implementing the GBA TAS input window.
2022-12-24 11:30:25 +01:00
JosJuice
582d6b738b
Merge pull request #11358 from t895/close-soft-keyboard
...
Android: Close soft keyboard on panel close
2022-12-24 11:21:56 +01:00
JosJuice
71f1b1db34
Boot: Fix handling of M3U file paths containing backslashes
...
Previously, if a user on Windows launched Dolphin from the command line
and specified a path to an M3U file and included backslashes in this path,
Dolphin would fail to resolve relative paths in the M3U file.
2022-12-24 11:13:27 +01:00
JosJuice
b3bc9c41ea
Merge pull request #11369 from t895/switch-fix
...
Android: Allow users to interact with switches in settings
2022-12-24 09:09:17 +01:00
Charles Lombardo
cf8537576e
Android: Allow users to interact with switches in settings
2022-12-24 02:56:36 -05:00
JosJuice
3611045a6c
DolphinQt: Add more i18n comments
2022-12-24 08:32:49 +01:00
Charles Lombardo
22dd0dbc3c
Android: Upgrade NDK to 25.1.8937393
2022-12-23 21:41:03 -05:00
Sam Belliveau
e1d078ada6
Remove Redundant Access Specifiers
2022-12-23 20:13:01 -05:00
Sam Belliveau
673f81c18a
New FrameTime/VBlank Analyzer + Graph
2022-12-23 19:52:53 -05:00
TheConfuZzledDude
27d596b89c
InputCommon/Xinput: Cleaned up a bit
2022-12-23 22:35:09 +00:00
TheConfuZzledDude
c3018fdc3b
InputCommon/XInput2: Added an axis output for the scroll wheel
2022-12-23 22:10:28 +00:00
Pierre Bourdon
2345ba178d
Merge pull request #11356 from Sam-Belliveau/update-dear-implot
...
Externals: Add Dear Implot
2022-12-23 22:05:29 +01:00
iwubcode
31bf9d0019
Core: add option to apply memory patch to not store the existing value (used during locking)
2022-12-23 12:31:33 -06:00
iwubcode
190cf5af30
DolphinQt: add multiselection to WatchWidget
2022-12-23 12:31:33 -06:00
iwubcode
c8a6ff6309
DolphinQt: add a 'add to watch' context menu item that allows you to add a memory location found in a cheat search to be added to the watch list
2022-12-23 12:31:33 -06:00
iwubcode
7d7fcdddd3
DolphinQt: add lock state to WatchWidget
2022-12-23 12:31:33 -06:00
iwubcode
8f3e8e4ca3
Core: add locked state to watches
2022-12-23 11:59:23 -06:00
iwubcode
41c9d706cb
DolphinQt: cleanup WatchWidget
2022-12-23 11:59:23 -06:00
iwubcode
3081a781fd
Core: when scheduling an invalidate cpu cache, no need to schedule if we're already on the cpu thread
2022-12-23 11:59:23 -06:00
iwubcode
2f2f906bf5
Core: add ability to add memory patches to the patch engine that will be executed each frame
2022-12-23 03:13:03 -06:00
iwubcode
1f87bcd202
Core: add ability to apply memory patches during a frame update in the PatchEngine
2022-12-23 03:13:03 -06:00
iwubcode
4743d74985
Core: add helper function to apply a memory patch and mark the 'PPCPatches' as final
2022-12-23 03:13:03 -06:00
Minty-Meeo
14179f7565
Follow-up on a four-year-old Android NDK workaround
...
Surely this is fixed by now.
2022-12-22 19:54:46 -06:00
Sam Belliveau
5ca438dd97
Add Dear ImPlot Library
2022-12-22 14:32:42 -05:00
Shawn Hoffman
9dcae0b1c3
msvc: remove workaround for arm64 sha1 compiler bug
2022-12-22 00:44:29 -08:00
Shawn Hoffman
270d74a324
bump required vs version
2022-12-22 00:43:34 -08:00
Minty-Meeo
05bebee802
Replace BitUtils with C++20: Counting Zeroes
...
With the upgrade to C++20, std::countl_zero and std::countr_zero can replace these home-spun implementations from the BitUtil.h library.
2022-12-21 04:17:00 -06:00
Charles Lombardo
4423afd462
Android: Close soft keyboard on panel close
2022-12-20 17:06:21 -05:00
Charles Lombardo
9c57d6028d
Android: Elevate ingame menu fragment with color
...
Whenever the app is not using the default theme, the ingame menu fragment will be treated as an elevated component like an alert dialog.
2022-12-20 16:39:17 -05:00
Admiral H. Curtiss
d853da3b0b
Merge pull request #11354 from Pokechu22/desert-bus-asnd-ucode
...
DSPHLE: Add Desert Bus libasnd ucode variants
2022-12-20 20:01:21 +01:00
Pokechu22
66b3686d84
DSPHLE: Add Desert Bus libasnd ucode variants
2022-12-20 10:02:53 -08:00
Mai
5348c8b2c6
Merge pull request #11344 from JosJuice/jitarm64-mw-deps
...
JitArm64: Improve pipelining of lmw/stmw
2022-12-20 15:11:29 +00:00
Mai
46bc21291a
Merge pull request #11346 from t895/grid-settings
...
Android: Move game grid options to MainActivity
2022-12-20 15:10:51 +00:00
Mai
b59a5c8cf8
Merge pull request #11352 from t895/theme-helper-kt
...
Android: Convert ThemeHelper to Kotlin
2022-12-20 15:04:41 +00:00
Mai
43366d2384
Merge pull request #11351 from JosJuice/bitset-cpp20
...
Common: Use C++20 <bit> header in BitSet.h
2022-12-20 15:02:38 +00:00
Sketch
c01ec96c92
Set checksum for NWC24Config during creation
2022-12-19 20:18:34 -05:00
JMC47
fb8aa9744e
Merge pull request #11286 from K0bin/vk-query-fix
...
VideoBackends: Query fixes and cleanups
2022-12-19 03:15:48 -05:00
Charles Lombardo
2f5808e7a4
Android: Convert ThemeHelper to Kotlin
2022-12-18 16:54:28 -05:00
JosJuice
547d956278
Common: Use C++20 <bit> header in BitSet.h
2022-12-18 16:51:32 +01:00
JosJuice
9f4d9994bc
Merge pull request #11347 from t895/cheats-background-fix
...
Android: Use colorSurface attribute for cheats activity background
2022-12-18 12:41:15 +01:00
Sketch
b56411b84b
Fix MemoryViewWidget background colour
2022-12-17 10:37:37 +01:00
Charles Lombardo
6090694eab
Android: Move game grid options to Main/TV Activities
2022-12-17 02:00:48 -05:00
Charles Lombardo
3bfe722c49
Android: Use colorSurface attribute for cheats activity background
2022-12-15 13:32:53 -05:00
Mai
a1c4861ad8
Merge pull request #10950 from JosJuice/replace-bitutils-rotate
...
Replace BitUtils with C++20: RotateLeft/RotateRight
2022-12-11 21:19:43 +00:00
Mai
aa57d53c90
Merge pull request #11345 from AdmiralCurtiss/globals-pe
...
VideoCommon/PixelEngine: Refactor to class, move to Core::System.
2022-12-11 21:07:30 +00:00
Admiral H. Curtiss
c486baffe6
VideoCommon/PixelEngine: Pass Core::System to methods.
2022-12-11 21:57:30 +01:00
Admiral H. Curtiss
ec8aaf1f30
VideoCommon/PixelEngine: Refactor to class, move to Core::System.
2022-12-11 21:57:19 +01:00
JosJuice
19db7a87a3
Merge pull request #11343 from t895/kotlin-clean
...
Android: Introduce Kotlin support
2022-12-11 20:12:47 +01:00
Charles Lombardo
8226506c84
Android: Introduce Kotlin support
2022-12-11 12:59:58 -05:00
JosJuice
701ba7cd43
JitArm64: Improve pipelining of lmw/stmw
...
The calculation of each address in lmw/stmw currently has a dependency
on the calculation of the previous address. By removing this dependency,
the host CPU should be able to pipeline the loads/stores better. The cost
we pay for this is up to one extra register and one extra MOV instruction
per guest instruction, but often nothing.
Making EmitBackpatchRoutine support using any register as the address
register would let us get rid of the MOV, but I consider that to be too
big of a task to do in one go at the same time as this.
2022-12-11 17:08:12 +01:00
Merry
17c14ac4b9
MachineContext: Fix USE_SIGACTION_ON_APPLE on arm64
2022-12-11 13:36:44 +00:00
JosJuice
82e87cf7b9
Merge pull request #9944 from JosJuice/android-nonsquare-buttons
...
Android: Allow non-square overlay control images
2022-12-11 12:10:55 +01:00
JosJuice
454537d53e
Replace BitUtils with C++20: RotateLeft/RotateRight
...
Now that we've flipped the C++20 switch, let's start making use of
the nice new <bit> header.
I'm planning on handling this move away from BitUtils.h incrementally
in a series of PRs. There may be a few functions remaining in
BitUtils.h by the end that C++20 doesn't have any equivalents for.
2022-12-11 08:59:18 +01:00
Mateus B. Cassiano
5f0960ff88
Android: fix compile error
2022-12-11 01:10:30 -04:00
JosJuice
1fd8d476e8
Merge pull request #11325 from t895/extra-dark
...
Android: Add black backgrounds toggle
2022-12-10 21:09:26 +01:00
JosJuice
2b7b3c3942
Merge pull request #11335 from t895/baseline-profile
...
Android: Baseline profile generation
2022-12-10 21:09:18 +01:00
Charles Lombardo
fd7a84b794
Android: Add black backgrounds toggle
...
Makes all background colors black in dark mode when enabled through a ThemeOverlay. Applied the same way as a theme/mode.
2022-12-10 14:53:01 -05:00
JosJuice
932926a4aa
Merge pull request #11329 from t895/elevation-bar
...
Android: Use ElevationOverlay for app bar elevation color
2022-12-10 20:33:56 +01:00
Mai
54e01c660e
Merge pull request #11334 from AdmiralCurtiss/globals-fifo
...
VideoCommon/Fifo: Refactor to class, move to Core::System.
2022-12-10 19:13:23 +00:00
Mai
128c23dc29
Merge pull request #11336 from t895/material-switch
...
Android: Replace Checkbox with MaterialSwitch
2022-12-10 19:12:07 +00:00
Mai
48ce5318e1
Merge pull request #11338 from JosJuice/jitarm64-revert-supposed-tail
...
Revert "JitArm64: Optimize a few tail calls"
2022-12-10 19:11:23 +00:00
Mai
c3bed35468
Merge pull request #11337 from JosJuice/aarch64-shrn
...
Arm64Emitter: Fix SHRN/SHRN2
2022-12-10 19:09:33 +00:00
Admiral H. Curtiss
ceae4242fc
VideoCommon/Fifo: Pass Core::System to methods.
2022-12-10 17:16:26 +01:00
Admiral H. Curtiss
5624dd6d39
VideoCommon/Fifo: Refactor to class, move to Core::System.
2022-12-10 17:16:19 +01:00
JosJuice
64bc150b8c
Revert "JitArm64: Optimize a few tail calls"
...
This reverts commit 351d095fff
.
In hindsight, my attempted optimization messes with the return
predictor, unlike real tail calls. So I think it does more bad than
good.
2022-12-10 11:35:52 +01:00
JosJuice
b5b8871bce
Arm64Emitter: Fix SHRN/SHRN2
...
The "vector shift by immediate" category encodes the shift amount for
right shifts as `size - amount`, whereas left shifts use `amount`.
We're not actually using SHRN/SHRN2 anywhere, which is why this has gone
undetected.
2022-12-10 11:20:23 +01:00
Charles Lombardo
2555e3720b
Android: Replace Checkbox with MaterialSwitch
2022-12-10 00:23:07 -05:00
Charles Lombardo
974003888a
Android: Baseline profile generation
...
This creates a new benchmark module that is responsible for generating baseline profiles and testing them. As part of this commit a baseline-prof.txt file has been included to speed up launch times with the app in its current state. Later, profile generation can be automated and keep up with the app as it changes.
2022-12-09 20:55:10 -05:00
JosJuice
61c10a5644
Merge pull request #11332 from t895/upgrade-dependencies
...
Android: Upgrade dependencies
2022-12-09 22:11:05 +01:00
Admiral H. Curtiss
1d199f4664
Qt/EnhancementsWidget: Combine texture filtering and anisotropic filtering.
2022-12-09 02:02:17 +01:00
Admiral H. Curtiss
ff2cc4d02b
Qt/EnhancementsWidget: Convert texture filtering option to a ComboBox.
2022-12-09 02:02:16 +01:00
Admiral H. Curtiss
8a3b8a925e
Core: Add option to force linear texture filtering.
2022-12-09 02:02:16 +01:00
TheLordScruffy
e97d380437
Implement PPC write-back data cache
2022-12-08 18:18:32 -05:00
Charles Lombardo
c440781ce7
Android: Upgrade dependencies
2022-12-08 14:13:15 -05:00
JosJuice
abf08b5869
Merge pull request #11309 from t895/agp-upgrade
...
Android: Upgrade AGP to 7.3.1
2022-12-08 19:57:59 +01:00
Admiral H. Curtiss
b207611c33
Merge pull request #11274 from TryTwo/PR_Conditional_BP_Add_Memory
...
Debugger: Add conditional breakpoints to memory BPs
2022-12-07 19:55:04 +01:00
Mai
000c6c4813
Merge pull request #11321 from JosJuice/jitarm64-accurate-nans
...
JitArm64: Implement accurate NaNs
2022-12-07 00:58:13 +00:00
Mai
94faad0d37
Merge pull request #11320 from AdmiralCurtiss/globals-memory
...
HW/Memmap: Refactor Memory to class, move to Core::System.
2022-12-07 00:52:31 +00:00
Charles Lombardo
f2c71a77fe
Android: Use ElevationOverlay for app bar elevation color
2022-12-06 18:41:55 -05:00
JosJuice
2a23aab254
Merge pull request #11327 from t895/settings-animation
...
Android: New settings fragment animations
2022-12-06 22:11:38 +01:00
Charles Lombardo
b9d05c4668
Android: New settings fragment animations
2022-12-06 14:17:04 -05:00
Charles Lombardo
dbfcbcb670
Android: Migrate all strings to strings.xml
2022-12-06 14:11:06 -05:00
Mai
a9a603b8cb
Merge pull request #11268 from jordan-woyak/ascii-controller
...
Rename "Keyboard" to "Keyboard Controller"
2022-12-04 21:05:52 +00:00
Charles Lombardo
e9c60f3e65
Android: Have each activity manage insets separately
2022-12-04 13:37:01 -05:00
TryTwo
a17fbe7c65
Expand conditional breakpoints to memory breakpoints
2022-12-04 11:25:33 -07:00
JosJuice
6abcaadd5a
Merge pull request #11314 from t895/menu-cutout-padding
...
Android: Pad menu fragment when expanding to cutout area
2022-12-04 18:59:32 +01:00
Mai
b23eb1f550
Merge pull request #11322 from JosJuice/jit64-madds-nan
...
Jit64: Correctly handle NaNs for ps_maddsX
2022-12-04 17:58:16 +00:00
Mai
f21edf6d5a
Merge pull request #11270 from t895/theme-mode
...
Android: Add theme mode switcher
2022-12-04 17:56:59 +00:00
JosJuice
3a7ecc851b
Merge pull request #11324 from t895/back-fix
...
Android: Fix cheats layout
2022-12-04 18:51:43 +01:00
Charles Lombardo
2a0939ab98
Android: Pad menu fragment when expanding to cutout area
2022-12-04 12:39:51 -05:00
Charles Lombardo
c60982b248
Android: Fix cheats layout
...
The sliding panel layout was in the way of the top app bar and prevented the up button from being pressed. This anchors the panel to the bottom of the top app bar and removed unnecessary hardcoded padding.
2022-12-04 12:34:36 -05:00
Admiral H. Curtiss
c9f31ad6a6
Merge pull request #11262 from K0bin/present-sync
...
VideoBackends:Vulkan: Synchronize presentation
2022-12-04 14:30:59 +01:00
Admiral H. Curtiss
2b93d5e0d7
Merge pull request #11273 from TryTwo/PR_Conditional_BP_Callstack
...
Debugger: add callstack to conditional breakpoints
2022-12-04 14:16:12 +01:00
Admiral H. Curtiss
2bd47d1435
Merge pull request #11232 from TryTwo/PR_MemoryView_highlighting
...
Debugger MemoryViewWidget: always highlight target address
2022-12-04 14:07:19 +01:00
Mai
51dfab6823
Merge pull request #11317 from t895/dialog-adjustment
...
Android: Use progress indicator in short loading scenarios
2022-12-04 09:15:39 +00:00
TryTwo
76bf1b5f7d
Add callstack to conditional breakpoints. Checks entire stack for value.
...
Use: callstack(0x80000000).
!callstack(value) works as a 'does not contain'.
Add strings to expr.h conditionals.
Use quotations: callstack("anim") to check symbols/name.
2022-12-03 20:52:17 -07:00
JosJuice
eeef5363e4
Jit64: Correctly handle NaNs for ps_maddsX
2022-12-03 21:05:05 +01:00
JosJuice
06e60ac327
JitArm64: Implement accurate NaNs
...
For quite some time now, we've had a setting on x86-64 that makes Dolphin
handle NaNs in a more accurate but slower way. There's only one game that
cares about this, Dragon Ball: Revenge of King Piccolo, and what that game
cares about more specifically is that the default NaN (or "generated NaN"
as I believe it's called in PowerPC documentation) is the same as on
PowerPC. On ARM, the default NaN is the same as on PowerPC, so for the
longest time we didn't need to do anything special to get Dragon Ball:
Revenge of King Piccolo working. However, in 93e636a
I changed how we
handle FMA instructions in a way that resulted in the sign of NaNs
becoming inverted for nmadd/nmsub instructions, breaking the game.
To fix this, let's implement the AccurateNaNs setting, like on x86-64.
2022-12-03 19:41:32 +01:00
JosJuice
5c41d3b602
JitArm64: Refactor temp reg handling in fp_arith/ps_arith
2022-12-03 19:08:27 +01:00
Admiral H. Curtiss
839db591d9
HW/Memmap: Refactor Memory to class, move to Core::System.
2022-12-03 13:27:02 +01:00
Charles Lombardo
64733b2504
Android: Use expanding Extended FAB
...
This adds text to the FAB when expanded and shrinks the FAB on scroll. The text will return when scrolling up as well.
2022-12-02 22:12:33 -05:00
Mai
af5596720f
Merge pull request #11315 from t895/motion-dialog-fix
...
Android: Greatly simplify MotionAlertDialog theming
2022-12-02 20:55:29 +00:00
Mai
6b514e81f9
Merge pull request #11316 from Pokechu22/jit-widget-fixes
...
Jit widget fixes
2022-12-02 20:54:48 +00:00
Charles Lombardo
6a95c565ae
Android: Use progress indicator in short loading scenarios
2022-12-02 15:16:10 -05:00
Charles Lombardo
b9fffa2e66
Android: Add theme mode switcher
...
Similar to app themes, theme modes have to be loaded before directory initialization is ready. So we save the proper key the same way.
2022-12-02 13:31:57 -05:00
Pokechu22
3d6bfcd236
JITWidget: Convert to fmt
2022-12-01 17:44:41 -08:00
Pokechu22
6a6d24550e
Clean up DisassembleBlock and JitInterface::GetHostCode
2022-12-01 17:43:35 -08:00
Pokechu22
5842b90bee
Show JIT blocks widget when selecting 'PPC vs Host' in code widget
...
Before, I just assumed this feature was broken since I didn't know what widget it used. Now, it behaves like show memory and show code elsewhere.
2022-12-01 17:43:35 -08:00
Pokechu22
0ccfa31ec8
Fix code widget not becoming visible when selecting 'view code' or similar
...
This affected the memory and registers widgets (and possibly others). I'm pretty sure it regressed in 5f629abd8b
.
The SetCodeVisible line is a new fix, but the equivalent already existed in the memory widget.
2022-12-01 17:43:35 -08:00
Pokechu22
4f4bd57fe9
Fix crash when stopping emulation while the JIT widget is in use
...
The call to analyzer.Analyze breaks when it attempts to read an instruction, as it eventually tries to read memory when Memory::m_pRAM is nullptr. Trying to read when execution is not paused in general seems like a bad idea (especially as analyzer.Analyze uses PowerPC::TryReadInstruction which can update icache - this is probably still a problem).
2022-12-01 17:43:34 -08:00
Charles Lombardo
09e350d9a7
Android: Greatly simplify MotionAlertDialog theming
2022-12-01 18:52:13 -05:00
Mai
385dfb60a0
Merge pull request #11313 from t895/inset-fix
...
Android: Letterbox content with display cutouts in landscape
2022-12-01 15:09:31 +00:00
Charles Lombardo
32b4f74d44
Android: Letterbox content with display cutouts in landscape
2022-12-01 01:24:09 -05:00
TellowKrinkle
ffb73f43e1
VideoBackends:Metal: Fix min/max lod when setting non-zero-based samplers
2022-11-30 21:11:37 -06:00
TryTwo
700eca1baa
MemoryViewWidget set target address as selected. Fix focus call. Always color selected item blue.
2022-11-30 16:38:56 -07:00
Robin Kertels
35a6d16d9e
VideoBackends: Rename query_type to query_group
2022-11-29 23:14:23 +01:00
Robin Kertels
df2e07ad29
VideoBackends:Vulkan: Fix incorrect barriers in StagingBuffer
...
HOST barriers need to be issued regardless of
whether the memory type is coherent
and we need to properly synchronize writes to the buffer.
2022-11-29 23:14:23 +01:00
Robin Kertels
57b2ea663e
VideoBackends:D3D12: Set query type
2022-11-29 23:14:23 +01:00
Robin Kertels
6ba7573877
VideoBackends:Vulkan: Fix queries
...
Fixes both checking whether queries are done
and actually resets query pools.
2022-11-29 23:14:07 +01:00
Mai
7cd9a78ebf
Merge pull request #11304 from JosJuice/jit64-nan-c
...
Jit64: Correctly handle NaNs for ps_mulsX/ps_sumX
2022-11-29 12:57:43 +00:00
Mai
5f22a0054f
Merge pull request #11305 from JosJuice/jitarm64-optimize-ps-merge
...
JitArm64: Optimize ps_mergeXX
2022-11-29 12:57:10 +00:00
Mai
ff830c08b6
Merge pull request #11307 from AdmiralCurtiss/globals-command-processor
...
VideoCommon/CommandProcessor: Refactor to class, move to Core::System.
2022-11-29 12:56:30 +00:00
Admiral H. Curtiss
6941d2e7e6
VideoCommon/CommandProcessor: Refactor to class, move to Core::System.
2022-11-29 08:15:01 +01:00
TellowKrinkle
e3cc42069f
VideoBackends:OGL: Creating vertex formats shouldn't unbind anything
2022-11-28 21:28:24 -06:00
Charles Lombardo
2e63c6c3ee
Android: Upgrade AGP to 7.3.1
2022-11-28 15:52:17 -05:00
JosJuice
2f1a8ee1b9
Jit64: Skip HandleNaNs for operations that can't generate NaN
...
Operations that have two operands and can't generate a default NaN,
i.e. addition and subtraction, already have the desired NaN handling
on x86. We just need to make sure to not reverse the operands.
This fixes ps_sum0/ps_sum1 outputting NaNs in cases where they shouldn't.
(HandleNaNs assumes that a NaN in a ps0 input always results in a NaN in
the ps0 output, and correspondingly for ps1.)
2022-11-27 11:30:10 +01:00
JosJuice
cbceae9176
Jit64: Correctly handle NaNs for ps_mulsX
2022-11-27 11:30:10 +01:00
JosJuice
d3180e3516
Jit64: Refactor HandleNaNs operand passing
2022-11-27 11:30:05 +01:00
Mai
44f8b8c100
Merge pull request #11303 from AdmiralCurtiss/coretiming-class
...
CoreTiming: Refactor to class.
2022-11-27 06:00:46 +00:00
Admiral H. Curtiss
64bb9ae9a9
Correctly call CoUninitialize() on Cubeb helper class destruction.
2022-11-27 03:58:50 +01:00
Admiral H. Curtiss
daa70533cd
CoreTiming: Store Globals in CoreTimingManager.
2022-11-27 03:47:12 +01:00
Admiral H. Curtiss
c9558ecb4c
CoreTiming: Refactor to class.
2022-11-27 03:47:12 +01:00
Admiral H. Curtiss
3cdc6e3d4a
Merge pull request #10343 from AdmiralCurtiss/cubeb-2021
...
Update cubeb to mozilla/cubeb@27d2a102b0
2022-11-27 03:26:11 +01:00
JosJuice
f45d3a6a2c
JitArm64: Optimize ps_mergeXX
...
1. In some cases, ps_merge01 can be implemented using one instruction.
2. When we need two instructions for ps_merge01, it's best to start with
a MOV to avoid false dependencies on the destination register.
3. ps_merge10 can be implemented using a single EXT instruction.
2022-11-26 18:14:58 +01:00
Admiral H. Curtiss
e085bf14f9
Core: Use extra thread for Cubeb on Windows to not disturb the CoInitialize state of whatever thread happens to call a Cubeb function.
2022-11-26 05:05:57 +01:00
Admiral H. Curtiss
ca10e92ab9
Core: Abide by COM MTA requirement for cubeb on Windows. Partially based on https://github.com/dolphin-emu/dolphin/pull/8920#discussion_r459746604
...
Co-authored-by: Michael M <mchtly@gmail.com>
2022-11-26 05:05:56 +01:00
Admiral H. Curtiss
59b1419a8e
Externals: Update cubeb to mozilla/cubeb@773f16b7ea and make it a submodule.
...
CMakeLists.txt has been extracted and modified a bit to work with Dolphin's typical build settings.
2022-11-26 05:05:52 +01:00
Admiral H. Curtiss
4273d3754c
CoreTiming: Move static variables into Core::System.
2022-11-26 04:22:32 +01:00
Admiral H. Curtiss
86f17511fc
CoreTiming: Move the 'Globals' instance into Core::System.
2022-11-26 04:22:32 +01:00
Admiral H. Curtiss
70f353fb37
Merge pull request #11283 from AdmiralCurtiss/netplay-save-sync-log
...
Netplay: Add more logging to save syncing.
2022-11-26 03:53:17 +01:00
Admiral H. Curtiss
d189c70d4d
Merge pull request #11230 from AdmiralCurtiss/gci-filenames
...
GCMemcardDirectory: GCI filename cleanup and fixes.
2022-11-26 03:52:43 +01:00
JoshuaMK
dd2282324b
Debugger BreakpointWidget: Allow editing breakpoints
2022-11-26 03:38:25 +01:00
TellowKrinkle
72eadc6520
InputCommon:SDL: Add SDL 2.26 left and right motion inputs
2022-11-24 15:12:07 -06:00
Mai
7be4c90f67
Merge pull request #11166 from AdmiralCurtiss/mmio-system
...
HW: Pass System to MMIO handlers.
2022-11-24 00:58:45 +00:00
Mai
d6437b7e46
Merge pull request #11123 from Pokechu22/fmt-9.1.0
...
Externals: Update fmt to 9.1.0
2022-11-23 22:40:03 +00:00
Pokechu22
f5d11c1e38
VideoBackends/D3D11: Simplify vertex attribute code
2022-11-23 13:45:43 -08:00
Pokechu22
cc5640245c
Fix build errors related to formatting non-scoped enums
2022-11-23 13:45:43 -08:00
JosJuice
ddf63bacb9
Merge pull request #11296 from t895/tv-game-details-fix
...
Android: Fix GameDetailsDialog on leanback
2022-11-23 22:06:49 +01:00
Admiral H. Curtiss
545fee9c94
Core/CommandProcessor: Reformat single/dual core dependent MMIO handlers.
2022-11-23 21:58:18 +01:00
Admiral H. Curtiss
0a6fdb9c13
HW: Pass System to MMIO handlers.
2022-11-23 05:52:21 +01:00
Mai
0ef6d30a0d
Merge pull request #11165 from AdmiralCurtiss/audiocommon-pass-system
...
AudioCommon: Pass Core::System to AudioCommon functions.
2022-11-23 04:49:31 +00:00
Mai
a47ed2124f
Merge pull request #11253 from AdmiralCurtiss/core-timing-events-pass-system
...
CoreTiming: Pass Core::System to Events.
2022-11-23 04:46:11 +00:00
Mai
677121bdbc
Merge pull request #11292 from JosJuice/jit64-imm-ra-update
...
Jit64: Use MOV instead of ADD for updating imm Ra
2022-11-23 04:42:46 +00:00
Mai
e573a0bbc2
Merge pull request #11294 from JosJuice/jitarm64-movpage2r
...
Arm64Emitter: Add MOVPage2R utility function
2022-11-23 04:41:31 +00:00
Mai
cb232155d9
Merge pull request #11298 from Pokechu22/vertexloader-no-DataReader
...
VertexLoader: Eliminate use of DataReader
2022-11-23 04:40:53 +00:00
Pokechu22
e13094766d
Fix VertexLoader.cpp using the wrong size for texture matrix indices without a corresponding texture
...
This regressed in 0a906f553f
, I think (though I haven't confirmed it). Mario Tennis and Luigi's Mansion both use these for some reason (as far as I can tell, the data isn't actually used; it's just extra data included for no reason)
2022-11-22 17:49:54 -08:00
Pokechu22
0bcd3c79bb
VertexLoader: Eliminate use of DataReader
...
DataReader is generally jank - it has a start and end pointer, but the end pointer is generally not used, and all of the vertex loaders mostly bypassed it anyways.
Wrapper code (the vertex loaer test, as well as Fifo.cpp and OpcodeDecoding.cpp) still uses it, as does the software vertex loader (which is not a subclass of VertexLoader). These can probably be eliminated later.
2022-11-22 17:17:11 -08:00
Sam Belliveau
edb2c90b38
Improve FPS/VPS Counting and Revamp Appearance
2022-11-23 00:11:47 +01:00
Admiral H. Curtiss
5e442f6ffa
Merge pull request #11281 from AdmiralCurtiss/updater-admin-check
...
Updater: Check for write permissions in directory of Updater.exe.
2022-11-22 23:50:13 +01:00
Admiral H. Curtiss
19b6251a3c
Merge pull request #11291 from JosJuice/gba-tas-input
...
DolphinQt: Add GBA TAS input window
2022-11-22 23:49:43 +01:00
Admiral H. Curtiss
132bf6550f
Merge pull request #11236 from AdmiralCurtiss/gci-path-config
...
Add config setting for base GCI folder path.
2022-11-22 23:48:46 +01:00
Charles Lombardo
6e5f546d4e
Android: Fix GameDetailsDialog on leanback
...
Previously the app would crash because Material Dividers inherit from AppCompat and the leanback activity does not. This creates a new layout file with leanback-specific accommodations and code is duplicated in GameDetailsDialog to prevent inflation crashes.
2022-11-22 15:56:15 -05:00
Charles Lombardo
e67788571a
Android: Fix condition where we set grid span too early
2022-11-22 15:19:15 -05:00
Admiral H. Curtiss
81557f611a
Qt/GameCubePane: Display a warning if a GCI folder override is set.
2022-11-22 17:53:20 +01:00
Admiral H. Curtiss
c18d6c3deb
Config: Use JPN for custom GCI folder paths.
2022-11-22 17:53:20 +01:00
Admiral H. Curtiss
86d01c3399
Config: Add option to use JPN as the Japanese region directory in GetDirectoryForRegion().
...
See https://bugs.dolphin-emu.org/issues/13076 for motivation for this.
2022-11-22 17:53:19 +01:00
Admiral H. Curtiss
1089d3cab6
GCMemcardDirectory: Compare GCI files in GetFileNamesForGameID() by their identity instead of their default filename.
2022-11-22 10:54:11 +01:00
Admiral H. Curtiss
4b0312ecf8
GCMemcardDirectory: Decode and strip strings for GCI filenames.
2022-11-22 10:54:11 +01:00
Admiral H. Curtiss
c517e92719
GCMemcardDirectory: Use HasSameIdentity() in LoadGCI().
...
This is cheaper and more accurate than comparing default GCI filenames.
2022-11-22 10:54:11 +01:00
Admiral H. Curtiss
b31b2db5fa
GCMemcard: Remove unused methods.
2022-11-22 10:54:10 +01:00
Admiral H. Curtiss
2132e005c3
Core: Add config setting for base GCI folder path.
2022-11-22 10:48:37 +01:00
Admiral H. Curtiss
5ebb894685
Updater: Delete the file we check for write rights with on Windows.
2022-11-22 02:38:42 +01:00
Admiral H. Curtiss
f0fb8c22b0
Updater: Check for write permissions in directory of Updater.exe.
2022-11-22 01:28:02 +01:00
Pokechu22
8f5a58f8be
Merge pull request #11285 from K0bin/cp-checks
...
VideoCommon:VertexLoaderManager: Reduce CPConfig checks
2022-11-21 15:35:06 -08:00
JosJuice
d64c3dc267
Arm64Emitter: Add MOVPage2R utility function
...
This new function is like MOVP2R, except it masks out the lower 12 bits,
returning them instead of writing them to the register. These lower
12 bits can then be used as an offset for LDR/STR. This lets us turn
ADRP+ADD+LDR sequences with a zero offset into ADRP+LDR sequences with
a non-zero offset, saving one instruction.
2022-11-21 23:24:06 +01:00
JosJuice
40571cf13c
DolphinQt: Add GBA TAS input window
...
When emulated GBAs were added to Dolphin, it was possible to control them
using the GC TAS input window. (Z was mapped to Select.) Unaware of this,
I broke the functionality in b296248
.
To make it possible to control emulated GBAs using TAS input again,
I'm adding a proper TAS input window for GBAs, with a real Select button
and no analog controls.
2022-11-21 19:16:30 +01:00
JMC47
22bcf134bf
Merge pull request #11139 from JosJuice/jit64-nans-no-freg
...
Jit64: Don't use fregsIn in HandleNaNs
2022-11-20 13:47:02 -05:00
JosJuice
4b6bad2f9e
Jit64: Use MOV instead of ADD for updating imm Ra
...
The old code would first MOV the old imm into Ra and then do an ADD.
We can skip the ADD and just MOV the new imm.
2022-11-20 10:50:25 +01:00
Admiral H. Curtiss
5d03577189
Memmap: Fix initialization of PhysicalMemoryRegion.
2022-11-18 06:57:54 +01:00
Robin Kertels
f179fd9c33
VideoCommon:VertexLoaderManager: Reduce CPConfig checks
...
A bit of a micro optimization:
CheckCPConfiguration is called 350 times instead of 35k times.
2022-11-18 01:42:30 +01:00
Léo Lam
f1c9774159
Merge pull request #11240 from noahpistilli/es_v1_ticket
...
IOS/ES: Add support for V1Ticket
2022-11-18 00:25:47 +01:00
Sketch
2fd9852ca8
IOS/ES: Add support for V1Ticket
2022-11-17 17:54:06 -05:00
Charles Lombardo
275e9e3a58
Android: Adjust card_width
2022-11-16 15:33:38 -05:00
JosJuice
9766238649
Merge pull request #11267 from t895/smooth-keyboard
...
Android: Use smooth keyboard animation in cheats activity
2022-11-16 20:48:20 +01:00
JosJuice
cecd4d15fe
Merge pull request #11254 from t895/adaptive-grid
...
Android: Dynamically adapt grid span to card_game size
2022-11-16 20:47:59 +01:00
JosJuice
7ce2be9386
Merge pull request #11256 from t895/animate-focus-change
...
Android: Animate covers on focus change
2022-11-16 20:47:16 +01:00
Admiral H. Curtiss
f0b0fcbb95
Netplay: Add more logging to save syncing.
2022-11-16 04:00:43 +01:00
Admiral H. Curtiss
99a918d884
Merge pull request #11280 from Pokechu22/efb-cache-cleanup
...
VideoCommon/FramebufferManager: Further EFB cache cleanup
2022-11-16 02:22:53 +01:00
Admiral H. Curtiss
43e90ca023
Merge pull request #11105 from vpelletier/si_ignore_setGameId
...
SI: Ignore non-standard setGameID command
2022-11-16 02:08:39 +01:00
Pokechu22
1fdf15a1be
VideoCommon/FramebufferManager: Rename m_efb_cache_tiles_wide to m_efb_cache_tile_row_stride
...
This also initializes it in the non-tiled case just for consistency, although it's not actually read in that case.
2022-11-15 16:04:41 -08:00
Pokechu22
55e1c3b51d
VideoCommon/FramebufferManager: use !IsUsingTiledEFBCache() in GetEFBCacheTileRect
...
This is for readability only, and should behave identically.
2022-11-15 15:48:56 -08:00
Pokechu22
90d05fe37e
VideoCommon/FramebufferManager: Always update frame access mask on depth peeks
...
0e02ddcf52
removed separate logic for tiled versus non-tiled EFB peek caches, and as part of that made it so that color peeks updated the frame access mask even when a non-tiled cache is in use. However, the same change was not made for depth peeks. I'm not sure if this affected anything in practice.
2022-11-15 15:34:03 -08:00
JMC47
8a1c28be63
Merge pull request #11172 from K0bin/efb-refresh
...
VideoCommon:FramebufferManager: Mark cache as valid after refresh
2022-11-15 16:33:46 -05:00
Admiral H. Curtiss
d7593dd721
Merge pull request #11243 from Sintendo/arm64mul
...
JitArm64: Optimize multiplication
2022-11-15 04:05:49 +01:00
Admiral H. Curtiss
c9e74801ed
Merge pull request #11269 from vabold/dolphindevice-get-time
...
Add DolphinDevice::GetSystemTime to allow for accurate Unix timestamp generation
2022-11-15 03:48:57 +01:00
Admiral H. Curtiss
6c9b9cbf95
Merge pull request #11255 from JosJuice/disable-sd-convert
...
Disable SD card conversion while emulation is running
2022-11-15 03:44:49 +01:00
Admiral H. Curtiss
09c0321997
Merge pull request #11184 from Lobsterzelda/save-all-nand-files-to-save-state
...
HostFileSystem: Set all NAND folders to be saved in save states
2022-11-15 03:42:26 +01:00
Admiral H. Curtiss
b6503d7585
Merge pull request #11018 from Dentomologist/add_updater_error_messages
...
Add updater error messages
2022-11-15 01:08:55 +01:00
Admiral H. Curtiss
5bdb291d90
Qt/Updater: Remove unused member variable.
2022-11-15 00:56:08 +01:00
Admiral H. Curtiss
f05b0ad669
Merge pull request #11271 from jordan-woyak/mapping-button-expanding
...
DolphinQt: Allow mapping buttons to expand horizontally.
2022-11-15 00:53:02 +01:00
Charles Lombardo
eb060c7356
Android: Dynamically adapt grid span to card_game size
...
In order to avoid getting stuck making a new dimension file every time a new device is found we take a known value for how large the game card will be, take the screen size, and adjust the grid accordingly.
2022-11-13 15:49:29 -05:00
JosJuice
f614f94568
Merge pull request #11272 from t895/tv-update-fix
...
Android: Use progress bar that does not inherit from AppCompat on leanback
2022-11-13 21:01:56 +01:00
Charles Lombardo
2e978ad428
Android: Use progress bar that does not inherit from AppCompat on leanback
2022-11-13 12:25:47 -05:00
JosJuice
2340a7eea6
Merge pull request #11248 from t895/offload-unmangle
...
Android: Offload cover path unmangling to another thread
2022-11-13 14:59:00 +01:00
JosJuice
1e80bcbd57
Merge pull request #11265 from t895/dialog-ripple-color
...
Android: Change alert dialog button ripple color for default theme
2022-11-13 09:16:06 +01:00
Admiral H. Curtiss
2a81fa6c26
Merge pull request #11015 from TryTwo/Conditional_Breakpoints
...
Conditional breakpoints
2022-11-13 01:06:52 +01:00
vabold
083b8172e0
Replace `std::time` with `std::chrono::system_clock`
2022-11-12 05:36:49 -05:00
vabold
ff1c71cc38
Fix inaccurate function name, add old function
2022-11-12 05:36:49 -05:00
Jordan Woyak
6044bc32a8
DolphinQt: Allow mapping buttons to expand horizontally.
2022-11-11 23:14:03 -06:00
Jordan Woyak
e9af3d945a
DolphinQt: Rename "Keyboard" to "Keyboard Controller" and add warning text.
2022-11-11 22:26:35 -06:00
JosJuice
f28e5607fe
Merge pull request #11263 from tellowkrinkle/NoMipsOption
...
VideoCommon: Add option to disable mipmaps
2022-11-11 17:55:45 +01:00
Jordan Woyak
296959ec58
GCKeyboardEmu: Eliminate unused Options group.
2022-11-11 01:59:09 -06:00
Charles Lombardo
8bfa08fa0e
Android: Use smooth keyboard animation in cheats activity
2022-11-11 00:53:59 -05:00
Charles Lombardo
8a46404329
Android: Change system update dialog title/message when cancelling
2022-11-10 22:46:41 -05:00
Charles Lombardo
4b622ef4d0
Android: Change alert dialog button ripple color for default theme
2022-11-10 21:58:11 -05:00
Lobsterzelda
ed54e1905a
HostFileSystem: Set all NAND folders to be saved in save states when a movie is active
2022-11-10 14:02:29 -05:00
TellowKrinkle
37a51f1d09
VideoCommon: Add an option to disable mipmaps
...
Needed by M1 fifoci to work around a minor non-determinism bug
2022-11-07 22:18:56 -06:00
JosJuice
dca51f3ab0
Merge pull request #11260 from t895/text-alignment
...
Android: Fix list_item_cheat text
2022-11-07 18:52:27 +01:00
Robin Kertels
3beb22ed7f
VideoBackends:Vulkan: Synchronize presentation
...
Synchronize with the submission thread
if the last present is not done yet.
2022-11-07 02:20:22 +01:00
Charles Lombardo
e79a4b0d8c
Android: Fix list_item_cheat text
...
Sometimes a gecko code would have a title long enough to appear over the checkbox. This is now prevented by marking the text's boundary a 16dp before the start of the checkbox.
2022-11-06 17:30:07 -05:00
Charles Lombardo
60fb151581
Android: Animate covers on focus change
...
Co-Authored-By: JosJuice <josjuice@gmail.com>
2022-11-06 15:52:19 -05:00
Admiral H. Curtiss
a98df18947
VideoCommon: Hold ImGui lock while initializing and shutting down ImGui.
2022-11-06 21:48:55 +01:00
Pokechu22
e37aa3ed90
RenderWidget: Fix random crash due to missing ImGui context
...
`ImGui::GetIO` performs an assertion that a context exists, and if one doesn't then things will likely crash. Unfortunately this crash is hard to consistently reproduce.
2022-11-06 21:41:07 +01:00
Admiral H. Curtiss
c931529e7a
Merge pull request #11225 from iwubcode/graphics-mod-textureload-callable
...
VideoCommon: call texture load graphics mod hook when textures are loaded
2022-11-06 18:58:51 +01:00
Admiral H. Curtiss
1348337277
Merge pull request #11246 from tellowkrinkle/PVDMemset
...
VideoCommon: Zero PortableVertexDeclarations on initialization
2022-11-06 18:54:21 +01:00
Admiral H. Curtiss
c75b53c7ed
Merge pull request #11250 from AdmiralCurtiss/memory-widget-menu
...
MemoryWidget: Split Actions into Import and Export.
2022-11-06 18:50:02 +01:00
JosJuice
982afec040
Android: Disable SD card conversion while emulation is running
2022-11-06 18:27:04 +01:00
Admiral H. Curtiss
a36a5c1308
CoreTiming: Pass Core::System to Events.
2022-11-06 17:54:58 +01:00
JosJuice
de93b4dc13
DolphinQt: Disable SD card conversion while emulation is running
2022-11-06 17:48:55 +01:00
Charles Lombardo
ff38fef2e4
Android: Use FrameLayout as root for notouch emulation layout
...
When inflating this layout, the layout inflater doesn't expect a View and rather a descendant of ViewGroup. This resulted in a crash which is resolved by using a FrameLayout instead.
2022-11-06 01:51:12 -05:00
Admiral H. Curtiss
db679ab620
Merge pull request #11249 from JosJuice/load-dol-elf-after-mem
...
Boot: Load DOL/ELF after memory setup
2022-11-06 05:40:54 +01:00
Admiral H. Curtiss
e1f5eb3d8d
Merge pull request #11233 from AdmiralCurtiss/netplay-split-save-sync-function
...
NetPlay: Split SyncSaveData() into two parts.
2022-11-06 05:39:26 +01:00
Admiral H. Curtiss
1c63349984
AudioCommon: Pass Core::System to AudioCommon functions.
2022-11-06 02:13:58 +01:00
Admiral H. Curtiss
e9caa09f7b
NetPlay: Split SyncSaveData() into two parts.
...
This allows the 'save collection' part to run even if no clients are connected. Fixes issue 13095.
2022-11-06 01:51:01 +01:00
Admiral H. Curtiss
cf533df814
MemoryWidget: Split Actions into Import and Export.
2022-11-05 23:05:15 +01:00
Admiral H. Curtiss
89bc1649e3
Merge pull request #11111 from TryTwo/PR_MemoryView_TableUpdates
...
MemoryViewWidget refactor memory table
2022-11-05 22:59:44 +01:00
JosJuice
fb916a4c33
Boot: Load DOL/ELF after memory setup
...
I recently talked to a homebrew developer who was trying to add exception
handlers at link time but found out that Dolphin was overwriting their
exception handlers. I figure that's not the usual way to do exception
handlers, but... making us load the executable after setting up memory
rather than before is easy, and matches what we do when booting discs,
so I suppose there's no reason not to do it. It also matches the intent
of why Dolphin is writing default exception handlers – we're writing
them because some homebrew relies on exception handlers being left
around from whatever program was running before it (see 3dd777be70
).
2022-11-05 13:55:17 +01:00
TellowKrinkle
d9ed9ae331
VideoCommon: Zero PortableVertexDeclarations on initialization
...
Fixes an issue where the default initializer wouldn't initialize padding, making for fun non-determinism
2022-11-05 02:02:53 -05:00
Admiral H. Curtiss
431301add3
Merge pull request #10771 from TryTwo/PR_AutoStep
...
Debugger: Implement base code tracing logic. and feature to auto-step through code.
2022-11-04 23:32:54 +01:00
Admiral H. Curtiss
26b68f1f84
Merge pull request #11228 from Pokechu22/statistics-macros
...
VideoCommon/Statistics: Require semicolons after statistics macros
2022-11-04 23:15:52 +01:00
Admiral H. Curtiss
8b4e315fb7
Merge pull request #11242 from Sintendo/arm64cmp
...
JitArm64: Optimize cmp
2022-11-04 23:13:09 +01:00
Charles Lombardo
6eb5013359
Android: Offload cover path unmangling to another thread
2022-11-04 14:28:21 -04:00
Robin Kertels
0e02ddcf52
VideoCommon:FramebufferManager: Cleanup
2022-11-04 01:18:23 +01:00
Robin Kertels
371935d61e
VideoCommon:FramebufferManager: Mark cache as valid after refresh
...
Otherwise we might never hit the early return
if either depth or color doesnt have any active
tiles.
2022-11-04 01:18:23 +01:00
TellowKrinkle
83ca1ad8a6
VideoBackends:Metal: Headless render support
2022-11-03 02:35:24 -05:00
Admiral H. Curtiss
1d07332657
Merge pull request #11193 from jordan-woyak/ciface-input-backend-interface
...
ControllerInterface: Add InputBackend interface.
2022-11-03 04:42:05 +01:00
Bram Speeckaert
274e34ddf1
JitArm64: MultiplyImmediate - Handle -(2^n) + 1
...
Let's take advantage of ARM64's input register shifting one last time,
shall we?
Before:
0x1280005b mov w27, #-0x3
0x1b1b7f18 mul w24, w24, w27
After:
0x4b180b18 sub w24, w24, w24, lsl #2
2022-11-02 21:53:19 +01:00
Bram Speeckaert
7073a135c6
JitArm64: MultiplyImmediate - Handle -(2^n)
...
ARM64's flexible shifting of input registers also allows us to calculate
a negative power of two in one instruction; shift the input of a NEG
instruction.
Before:
0x128001f7 mov w23, #-0x10
0x1b1a7efa mul w26, w23, w26
0x93407f58 sxtw x24, w26
After:
0x4b1a13fa neg w26, w26, lsl #4
0x93407f58 sxtw x24, w26
2022-11-02 21:53:19 +01:00
Bram Speeckaert
1c87f040a3
JitArm64: mulli - Only allocate reg when necessary
...
If the destination register doesn't equal the input register, using it
to temporarily hold the immediate value is fair game as it'll be
overwritten with the result of the multiplication anyway. This can
slightly reduce register pressure.
Before:
0x52800659 mov w25, #0x32
0x1b197f5b mul w27, w26, w25
After:
0x5280065b mov w27, #0x32
0x1b1b7f5b mul w27, w26, w27
2022-11-02 21:53:19 +01:00
Bram Speeckaert
20dd5cadab
JitArm64: MultiplyImmediate - Add comments
2022-11-02 21:53:17 +01:00
Bram Speeckaert
c349875cdc
JitArm64: MultiplyImmediate - Handle 2^n + 1
...
By taking advantage of ARM64's ability to shift an input register by any
amount, we can calculate multiplication by a number that is one more
than a power of two with a single instruction.
Before:
0x52800838 mov w24, #0x41
0x1b187f7b mul w27, w27, w24
After:
0x0b1b1b7b add w27, w27, w27, lsl #6
2022-11-02 21:52:44 +01:00
Bram Speeckaert
3aaf1a2b8b
JitArm64: MultiplyImmediate - Handle 2^n
...
Turn multiplications by a power of two into bitshifts.
Before:
0x52800817 mov w23, #0x40
0x1b167ef6 mul w22, w23, w22
After:
0x531a66d6 lsl w22, w22, #6
2022-11-02 21:52:37 +01:00
Markus Wick
0210d115c2
Merge pull request #11227 from JosJuice/jitarm64-mmio-clobber
...
JitArm64: Move MMIO handler result before popping stack
2022-11-02 10:19:22 +01:00
Jordan Woyak
168a49c87f
ControllerInterface: DSU InputBackend implementation.
2022-11-01 21:59:09 -05:00
Jordan Woyak
2e5cd5d519
ControllerInterface: evdev InputBackend implementation.
2022-11-01 21:59:08 -05:00
Jordan Woyak
44a4573303
ControllerInterface: Add InputBackend interface and SDL implementation.
2022-11-01 21:59:08 -05:00
Bram Speeckaert
f25611f388
JitArm64: MultiplyImmediate - Handle 1
...
Multiplication by one is also trivial. Depending on the registers
involved, either a single MOV or no instructions will be generated.
Before:
0x52800038 mov w24, #0x1
0x1b1a7f1b mul w27, w24, w26
After:
0x2a1a03fb mov w27, w26
Before:
0x52800039 mov w25, #0x1
0x1b1a7f3a mul w26, w25, w26
After:
Nothing!
2022-11-01 21:13:45 +01:00
Bram Speeckaert
51cb918aa5
JitArm64: MultiplyImmediate - Handle 0
...
Multiplication by zero always gives zero.
Before:
0x52800019 mov w25, #0x0
0x1b197f5b mul w27, w26, w25
After:
Nothing!
2022-11-01 21:13:38 +01:00
Bram Speeckaert
080513284c
JitArm64: mullwx - Use MultiplyImmediate
2022-11-01 19:05:33 +01:00
Bram Speeckaert
53a8cd1563
JitArm64: mulli - Use MultiplyImmediate
2022-11-01 19:04:50 +01:00
Bram Speeckaert
4aa0c0133a
JitArm64: Introduce MultiplyImmediate
...
Add a new function that will handle all the special cases regarding
multiplication. It does nothing for now, but will be expanded in
follow-up commits.
2022-11-01 19:01:38 +01:00
JosJuice
dc046a2470
Merge pull request #11237 from t895/grid-fix
...
Android: Add more game grid sizes for long displays
2022-11-01 19:00:53 +01:00
Bram Speeckaert
d0de68c41b
JitArm64: cmp - Optimize general case
...
We can merge an SXTW with the SUB, eliminating one instruction. In
addition, it is no longer necessary to allocate a temporary register,
reducing register pressure.
Before:
0x93407f59 sxtw x25, w26
0x93407ebb sxtw x27, w21
0xcb1b033b sub x27, x25, x27
After:
0x93407f5b sxtw x27, w26
0xcb35c37b sub x27, x27, w21, sxtw
2022-11-01 12:21:24 +01:00
Bram Speeckaert
ae6ce1df48
Arm64Emitter: Add ArithOption with ExtendSpecifier
...
ARM64 can do perform various types of sign and zero extension on a
register value before using it. The Arm64Emitter already had support for
this, but it was kinda hidden away.
This commit exposes the functionality by making the ExtendSpecifier enum
available everywhere and adding a new ArithOption constructor.
2022-11-01 12:15:56 +01:00
Bram Speeckaert
82f22cdfa1
JitArm64: cmp - Optimize a == -1 case
...
By explicitly handling this, we can avoid materializing -1 in a
register and generate more efficient code by taking advantage of -x ==
~x + 1.
Before:
0x12800015 mov w21, #-0x1
0x93407eb9 sxtw x25, w21
0x93407ef8 sxtw x24, w23
0xcb180338 sub x24, x25, x24
After:
0x2a3703f8 mvn w24, w23
0x93407f18 sxtw x24, w24
2022-11-01 12:00:32 +01:00
Bram Speeckaert
592ba31e22
JitArm64: cmp - Optimize a == 0 case
...
By explicitly handling this, we can avoid materializing zero in a
register and generate more efficient code altogether.
Before:
0x52800016 mov w22, #0x0
0xb94093b5 ldr w21, [x29, #0x90]
0x93407ed7 sxtw x23, w22
0x93407eb9 sxtw x25, w21
0xcb1902f9 sub x25, x23, x25
After:
0xb94093b7 ldr w23, [x29, #0x90]
0x4b1703f9 neg w25, w23
0x93407f39 sxtw x25, w25
2022-11-01 11:52:00 +01:00
Bram Speeckaert
f5e7e70cc5
JitArm64: cmp - Refactor
2022-11-01 11:47:17 +01:00
Bram Speeckaert
dbb8f588c7
JitArm64: cmpl - Optimize a == 0 case
...
By explicitly handling this, we can avoid materializing zero in a
register.
Before:
0x52800019 mov w25, #0x0
0xb94087b6 ldr w22, [x29, #0x84]
0xcb16033b sub x27, x25, x22
After:
0xb94087b9 ldr w25, [x29, #0x84]
0xcb1903fb neg x27, x25
2022-11-01 11:27:45 +01:00
Dentomologist
7cd08fde75
Updater: Add/clarify error messages
2022-10-31 23:36:07 -07:00
Dentomologist
2808db7f2f
FileUtil: Return success bool from CopyDir
2022-10-31 23:33:02 -07:00
shuffle2
111e965c7e
Revert "MacUpdater: test that os version check is working"
2022-10-31 18:53:22 -07:00
Tilka
b182abe0ae
Merge pull request #11234 from shuffle2/updater
...
MacUpdater: test that os version check is working
2022-11-01 01:28:20 +00:00
Tillmann Karras
22eb7e6645
OGL: use already known object label lengths
...
Passing -1 means the driver has to call strlen().
2022-11-01 01:10:03 +00:00
Tillmann Karras
4b8fe959d4
OGL: fix compute shader labels
...
This fixes GL_INVALID_VALUE errors when using GPU texture decoding.
2022-11-01 01:04:46 +00:00
Robin Kertels
f5fecaf964
VideoBackends:Vulkan: Fix 0 size descriptor pools
...
[ VUID-VkDescriptorPoolCreateInfo-maxSets-00301 ] Object 0:
handle = 0x7f1,b8d,3cd,e70, type = VK_OBJECT_TYPE_DEVICE; |
MessageID = 0xa1,70e,236 | vkCreateDescriptorPool():
pCreateInfo->maxSets is not greater than 0.
The Vulkan spec states: maxSets must be greater than 0
2022-10-31 22:41:16 +01:00
Charles Lombardo
349b16aa55
Android: Add more game grid sizes for long displays
2022-10-31 13:11:17 -04:00
Shawn Hoffman
7cc8e37aee
MacUpdater: test that os version check is working
...
Adds a key to Info.plist with default value to test
Updater - this commit is intended to be reverted
2022-10-30 13:19:43 -07:00
JMC47
969309c457
Merge pull request #11220 from shuffle2/macversion
...
MacUpdater: check os version
2022-10-30 15:19:55 -04:00
Shawn Hoffman
089886a6f8
MacUpdater: check os version
2022-10-30 12:04:57 -07:00
JMC47
f277a921a9
Merge pull request #11231 from shuffle2/updater
...
windows: Rename: use std::filesystem::rename for posix behavior
2022-10-30 13:32:10 -04:00
JMC47
950e1f94dc
Merge pull request #11185 from TryTwo/PR_MemoryWidget_Address_Input_History
...
MemoryWidget: Make search address a combobox that holds address history.
2022-10-30 04:21:14 -04:00
TryTwo
053320b7cf
MemoryWidget: Make search address a combobox that holds address history.
...
Always update the combobox when a new target address is sent.
2022-10-29 22:41:30 -07:00
Shawn Hoffman
68875dc06b
MacUpdater: add version info to Updater.app too
2022-10-29 20:32:59 -07:00
Shawn Hoffman
836bc74b2d
windows: Rename: use std::filesystem::rename for posix behavior
2022-10-29 19:57:26 -07:00
Pokechu22
fe559f3ed3
VideoCommon/Statistics: Require semicolons after statistics macros
...
This is clearer and reduces IntelliSense problems.
2022-10-29 15:39:41 -07:00
Admiral H. Curtiss
0628794cb6
Merge pull request #11226 from K0bin/d3d12-fix
...
VideoBackends:D3D12: Fix hang in Twilight Princess
2022-10-30 00:24:16 +02:00
Robin Kertels
a07ee729e5
VideoBackends:D3D12: Defer binding framebuffer in SetAndDiscardFramebuffer
...
BindFramebuffer depends on the pipeline which might not be set yet.
That's why the framebuffer dirty flag exists in the first place.
I assume BindFramebuffer was called directly here, in order to handle
the texture state transitions necessary for DiscardResource.
The state is tracked anyway, so we can just issue those transitions there
too and defer binding the actual framebuffer.
Fixes an issue in Zelda Twilight Princess with EFB depth peeks.
Dolphin would bind a frame buffer which doesn't have an integer format
descriptor for the color target before binding the new pipeline.
So it would accidentally use the 0 descriptor.
Debug layer error:
D3D12 ERROR: ID3D12CommandList::OMSetRenderTargets:
Specified CPU descriptor handle ptr=0x0000000000000000 does not refer to
a location in a descriptor heap. pRenderTargetDescriptors[0] is the issue.
[ EXECUTION ERROR #646 : INVALID_DESCRIPTOR_HANDLE]
2022-10-29 23:41:32 +02:00
Robin Kertels
a6aa651291
VideoBackends:D3D12: Use COMMON as initial state for default heap buffer
...
Fixes the following error in the D3D12 debug layer:
D3D12 WARNING: ID3D12Device::CreateCommittedResource:
Ignoring InitialState D3D12_RESOURCE_STATE_UNORDERED_ACCESS.
Buffers are effectively created in state D3D12_RESOURCE_STATE_COMMON.
[ STATE_CREATION WARNING #1328 : CREATERESOURCE_STATE_IGNORED]
2022-10-29 23:39:32 +02:00
Robin Kertels
22fecb41fc
VideoBackends:D3D12: Don't query GPU descriptor handle for non-shader visible heap
...
Fixes the following error in the D3D12 debug layer:
D3D12 ERROR: ID3D12DescriptorHeap::GetGPUDescriptorHandleForHeapStart:
GetGPUDescriptorHandleForHeapStart is invalid to call on a descriptor
heap that does not have DESCRIPTOR_HEAP_FLAG_SHADER_VISIBLE set.
If the heap is not supposed to be shader visible, then
GetCPUDescriptorHandleForHeapStart would be the appropriate method
to call. That call is valid both for shader visible and non shader
visible descriptor heaps.
[ STATE_GETTING ERROR #1315 : DESCRIPTOR_HEAP_NOT_SHADER_VISIBLE]
2022-10-29 23:39:27 +02:00
Tillmann Karras
cacdd18ca0
VolumeVerifier: fix bogus "serial/version missing" error
...
When searching for a disc where the revision doesn't match any disc in
the datfile, the loop would never get to the part where serials_exist is
set to true, leading to a bogus error message.
2022-10-29 21:32:57 +01:00
Pokechu22
6dcf8a6fc9
Merge pull request #11201 from JoshuaMKW/fix-instruction-patches
...
MemoryPatches: Fix instruction patches
2022-10-29 12:34:00 -07:00
JosJuice
aeb0fcb8ab
Merge pull request #11092 from t895/view-binding
...
Android: Use view binding
2022-10-29 17:20:08 +02:00
Charles Lombardo
5c30f65bbb
Android: Use view binding
2022-10-29 11:05:09 -04:00
JosJuice
7d55e9f9c7
Merge pull request #11202 from t895/androidx-prefs
...
Android: Use androidx preference manager
2022-10-29 16:08:48 +02:00
JosJuice
431ee1c48a
JitArm64: Improve register handling for MMIO loadstores
...
Because of the previous commit, `regs_in_use` must not include `dest_reg`
when calling MMIOLoadToReg. There are also some other registers we can
skip including in regs_in_use just for efficiency's sake.
The `addr_reg_set = false` statements that I've added in this commit are
technically redundant – if `mmio_address` is non-zero then `addr_reg_set`
is already false – but it's just a coincidence that that's the case.
2022-10-29 14:16:53 +02:00
JosJuice
0660f12da4
JitArm64: Move MMIO handler result before popping stack
...
Otherwise we might throw the result away.
Fixes https://bugs.dolphin-emu.org/issues/13083 .
2022-10-29 14:16:43 +02:00
iwubcode
ea3e133200
VideoCommon: call texture load graphics mod hook when Dolphin loads a texture
2022-10-28 19:24:43 -05:00
iwubcode
0e1ffe009a
VideoBackends: fix d3d12 subresource calculation
2022-10-28 19:07:08 -05:00
Admiral H. Curtiss
8efd7833e5
Merge pull request #11150 from jordan-woyak/all-devices-less-confusing
...
DolphinQt: Make "All Devices" mapping hopefully less confusing.
2022-10-29 00:53:19 +02:00
Admiral H. Curtiss
8001535d12
Merge pull request #11211 from jordan-woyak/fix-focus-resume-after-manual-pause
...
DolphinQt: Fix window focus from unpausing after a manual pause.
2022-10-29 00:35:50 +02:00
JoshuaMK
e2f4400f49
Make SetPatch responsible for overwriting old patches
2022-10-26 22:46:49 -05:00
Pokechu22
2f3805e1b4
GraphicsSettings: Remove unused FreelookControlType enum forward declaration
2022-10-26 16:23:13 -07:00
Jordan Woyak
4fc05dd025
DolphinQt: Fix window focus from unpausing after a manual pause.
2022-10-25 19:39:41 -05:00
Pokechu22
581a575042
VertexLoader: Remove "too many initializer values" workaround functions
...
I originally added these in 2b1d1038a6
, for both the TPipelineFunction and the size. The size was moved into the header in fdcd2b7d00
(making the size functions obsolete), but it seems that the functions themselves are no longer needed now.
I think I didn't use this approach before because it would have required ComponentFormatTable and ComponentCountRow to be templated, which would end up resulting in lines that were too long and thus wrapped in awkward places. (I *think* they didn't get inferred properly.) Now that we only need TPipelineFunction, the templating is not needed, and this ends up being a more readable version of the version with the wrapper functions.
2022-10-25 15:29:09 -07:00
JMC47
027e10460a
Merge pull request #10977 from tellowkrinkle/FixBackendMultithreading
...
VideoBackends:Vulkan: Improve backend multithreading
2022-10-25 04:14:01 -04:00
JMC47
9ef7a3b44c
Merge pull request #11207 from Pokechu22/invalid-normal-count
...
VideoCommon: Treat invalid normal count as NormalTangentBinormal
2022-10-25 03:17:19 -04:00
Pokechu22
574939b683
VideoCommon: Treat invalid normal count as NormalTangentBinormal
...
See https://bugs.dolphin-emu.org/issues/13070 .
2022-10-24 22:36:43 -07:00
TellowKrinkle
fa8134deda
VideoBackends:Metal: Default to presentDrawable when vsync is on
2022-10-24 17:55:30 -05:00
JMC47
b66793194e
Merge pull request #11028 from tellowkrinkle/MetalFixes
...
Various Metal renderer improvements
2022-10-24 15:22:37 -04:00
JMC47
4787b25a7f
Merge pull request #10741 from Pokechu22/audio-dma-one-block-at-a-time
...
DSP: Copy audio dma samples one block at a time
2022-10-24 01:43:22 -04:00
Charles Lombardo
a78e266a26
Android: Use androidx preference manager
2022-10-23 22:34:23 -04:00
JoshuaMK
2594447c25
Have UnsetPatch only unset the argument address
2022-10-23 18:42:34 -05:00
JoshuaMK
e10b3308c2
Fix patch corruption using find_if instead of remove_if
2022-10-23 18:41:15 -05:00
JMC47
33733ff81c
Merge pull request #11199 from JosJuice/translation-fixes
...
WiimoteEmu: Change Shinkansen Start/Select to START/SELECT
2022-10-23 16:07:11 -04:00
JosJuice
7437d2d9ad
WiimoteEmu: Change Shinkansen Start/Select to START/SELECT
...
For consistency with GameCube controllers and GBAs. I missed this
when reviewing the PR.
Also adding some i18n comments while I'm at it.
2022-10-23 21:50:54 +02:00
JosJuice
063c2739b3
Merge pull request #11135 from AdmiralCurtiss/ppcanalyst-unused-stats
...
PPCAnalyst: Remove unused variables and methods in BlockStats and BlockRegStats.
2022-10-23 21:22:54 +02:00
JosJuice
d442f3f2e0
Merge pull request #11079 from t895/system-windows
...
Android: Do not fit system windows
2022-10-23 21:20:06 +02:00
Charles Lombardo
90d27be1d6
Android: Do not fit system windows
2022-10-23 15:09:01 -04:00
JMC47
9654d9a72b
Merge pull request #11196 from JosJuice/android-vs-lines-points-setting
...
Android: Add "Prefer VS for Point/Line Expansion" to GUI
2022-10-23 14:22:25 -04:00
JosJuice
7743afddac
Merge pull request #11163 from t895/convert-layout
...
Android: Replace spinners with dropdown menus
2022-10-23 20:00:18 +02:00
Charles Lombardo
0fdae88fab
Android: Replace spinners with dropdown menus
2022-10-23 13:25:12 -04:00
TryTwo
e2df81b0c1
Add logging and error reporting to Breakpoint Conditionals.
2022-10-23 08:22:35 -07:00
Shawn Hoffman
4705fb7588
Updater: clarify a string
2022-10-23 01:47:02 -07:00
Shawn Hoffman
08c019608d
WinUpdater: fix renaming of Updater
2022-10-23 01:34:04 -07:00
JosJuice
c1c3ecacac
Android: Add "Prefer VS for Point/Line Expansion" to GUI
...
This adds PR 10890's new setting to the Android GUI. I'm curious to see
if any Android users might get a performance improvement from it.
Due to how our settings work on Android, I haven't implemented disabling
the checkbox when the graphics backend doesn't support both GS and VS
for point/line expansion, but I don't think that's critical to have.
2022-10-23 10:14:23 +02:00
Shawn Hoffman
f952c3dbbe
this is a test commit for WinUpdater
2022-10-23 00:19:46 -07:00
JMC47
34de2b85f3
Merge pull request #11189 from shuffle2/updater-elevation
...
WinUpdater: Defer modifying any files until Updater.exe
2022-10-23 02:20:56 -04:00
JMC47
cdcbe51b2a
Merge pull request #10890 from tellowkrinkle/VertexLineExpand
...
VideoCommon: Add vertex shader point/line expansion
2022-10-23 01:49:26 -04:00
JMC47
06bd0a9086
Merge pull request #11132 from K0bin/vma
...
Vulkan: Use VMA for memory allocations
2022-10-23 01:18:47 -04:00
Robin Kertels
aa1679f2c7
VideoBackends:Vulkan: Clean up unused memory allocation code
2022-10-23 03:21:29 +02:00
Robin Kertels
1ba58e83ca
VideoBackends:Vulkan: Use VMA for stream buffer
2022-10-23 03:21:29 +02:00
Robin Kertels
0e1b7a7b35
VideoBackends:Vulkan: Use VMA for bounding box
2022-10-23 03:21:29 +02:00
Robin Kertels
0532f4a05a
VideoBackends:Vulkan: Use VMA for staging buffers
2022-10-23 03:21:14 +02:00
TellowKrinkle
1e9b6f88e4
VideoCommon: Support hot reloading of VS expand
2022-10-22 20:18:02 -05:00
TellowKrinkle
3912fa7a2e
VideoCommon: Add reasons for disabled VS expand
2022-10-22 20:18:02 -05:00
TellowKrinkle
b567f3afcf
VideoCommon: Move repeated point/line expansion code to ShaderGenCommon
2022-10-22 20:13:24 -05:00
TellowKrinkle
0a42c534c3
VideoCommon: Add configuration to prefer VS for line/point expansion
2022-10-22 20:13:24 -05:00
TellowKrinkle
1eeba6dcca
VideoBackends:D3D12: Add support for vertex shader point and line expansion
2022-10-22 20:13:24 -05:00
TellowKrinkle
9624479933
VideoBackends:OGL: Add support for vertex shader point and line expansion
2022-10-22 20:13:24 -05:00
TellowKrinkle
3a5901d12e
VideoBackends:Vulkan: Add support for vertex shader point and line expansion
2022-10-22 20:13:24 -05:00
TellowKrinkle
678ee48bfc
VideoBackends:Metal: Add support for vertex shader point and line expansion
2022-10-22 20:13:24 -05:00
TellowKrinkle
68f49df0f8
VideoCommon: Add vertex shader point and line expansion
2022-10-22 20:13:24 -05:00
Robin Kertels
3ffbf94b2a
VideoBackends:Vulkan: Set up VMA
...
Co-authored-by: iwubcode <iwubcode@users.noreply.github.com>
2022-10-23 02:54:35 +02:00
TryTwo
6f4f4e057e
MemoryViewWidget refactor memory table.
...
Don't re-create the table on every update.
2022-10-22 17:52:39 -07:00
Robin Kertels
5e96733e35
Externals: Add VMA
2022-10-23 02:33:03 +02:00
Pokechu22
bac75de79c
Fifo recorder: Fix incorrect calculation of the size of an array
...
The old calculation was stride * (max_index + 1), which fails if stride is less than the size of a component (for instance, if float XYZ positions are used, and the stride was set to 4 (i.e. sizeof(float)) instead of 12 (i.e. 3 * sizeof(float)), it would be missing the last 8 bytes of the final element in the array. Or, if stride was set to 0, then no bytes would be recorded at all (though that's not a useful configuration so it's unlikely to actually exist).
I'm not aware of any games affected by this issue.
2022-10-22 13:36:16 -07:00
Pokechu22
c9ff2a9b3d
Fifo recorder: Fix NormalIndex3
...
This should fix recording the wall in the staircase leading to the basement in Luigi's Mansion (though I haven't tested it, as I don't own a copy of Luigi's Mansion). This uses NormalIndex3, and the index for the normal vector (generally 0x02XX or 0x01XX) there is always lower than the tangent or binormal (generally 0x07XX). Other games seem to usually have a similar range of indices for the normal, tangent, and binormal, so this issue wouldn't affect them.
2022-10-22 13:36:16 -07:00
Pokechu22
24b761acda
Fifo recorder: Fix position's type being used for normals/colors/texture coords
...
In most cases, games will use the same type for all vertex components (either Index8 or Index16 or Direct). However, RS2's deflection towers use Index16 for the texture coordinate and Index8 for everything else, meaning the texture coordinates were recorded incorrectly (the first byte was used, so only indices 0 and 1 were recorded instead of 0 through 0x0192). Worse still, some background elements in RS2 use direct positions but indexed normals or texture coordinates, and those would not be recorded at all.
This is a regression from b5fd35f951
.
2022-10-22 13:36:16 -07:00
JMC47
804e42150e
Merge pull request #11188 from GaryOderNichts/feature/vwii_ancast
...
Support for loading vWii System Menu
2022-10-22 15:57:55 -04:00
Pokechu22
6de55e416b
WaveFile: Fix size check
...
`count` is the number of stereo samples to write (where each stereo sample is two shorts), while `BUFFER_SIZE` is the size of the buffer in shorts. So `count` needs to be multiplied by `2`, not `BUFFER_SIZE`. Also, when this check was failed, the previous code just clobbered whatever was past the end of the buffer after logging the warning, which corrupted `basename`, eventually resulting in Dolphin crashing.
This affected Datel's Wii-compatible Action Replay, which uses a block size of 2298, or 18384 stereo samples, which is 36768 shorts, which is bigger than the buffer size of 32768. (However, the previous commit means that only one block is transfered at a time, eliminating this issue; fixing the bounds check is just a general safety thing instead of an actual bugfix now.)
2022-10-22 11:44:38 -07:00
Pokechu22
2a83b17ffb
DSP: Copy audio dma samples one block at a time
...
Reverts 9f8e1e2a0d
, but keeps the changes from e4e44909d5
.
This fixes missing audio in Datel titles; see https://bugs.dolphin-emu.org/issues/12281 .
2022-10-22 11:44:38 -07:00
GaryOderNichts
88c57a00a3
Show vWii System Menu version in Menu Bar
2022-10-22 13:36:55 +02:00
GaryOderNichts
82d20ce352
Support for loading Ancast images
2022-10-22 13:35:49 +02:00
JMC47
5b69c67b3a
Merge pull request #11147 from JosJuice/jitarm64-arith-org
...
JitArm64: Merge ps_mulsX, ps_maddXX, and parts of fp_arith
2022-10-22 06:37:27 -04:00
JMC47
b7310a180f
Merge pull request #11170 from JosJuice/jit64-dispatcher-no-check
...
Jit64: Add dispatcher_no_timing_check jump target
2022-10-22 06:19:00 -04:00
JMC47
55d269c9e0
Merge pull request #11190 from jordan-woyak/shinkansen-ui-button-order
...
WiimoteEmu: Shinkansen Tweaks
2022-10-22 05:21:00 -04:00
JosJuice
812067ab7c
JitArm64: Move ps instructions from fp_arith to ps_arith
...
This lets us simplify fp_arith without making ps_arith much more
complicated.
No behavior change.
2022-10-22 11:15:41 +02:00
JosJuice
554a2fd332
JitArm64: Merge ps_mulsX and ps_maddXX
...
They have a lot of shared code, most notably the code for rounding c.
No behavior change.
2022-10-22 11:12:19 +02:00
JMC47
2153276ab9
Merge pull request #10046 from JosJuice/jitarm64-improve-const-stores
...
JitArm64: FIFO optimization improvements
2022-10-22 05:03:43 -04:00
JMC47
bc4d08047d
Merge pull request #10979 from tellowkrinkle/QuartzWindowSpeed
...
InputCommon:QuartzKB&M: Use KVO to watch window position
2022-10-22 04:55:12 -04:00
Markus Wick
7a2256469e
Merge pull request #11127 from JosJuice/aarch64-jitasm-macro-op
...
JitAsm64: Reorder instructions in routines to allow macro-op fusion
2022-10-22 10:31:54 +02:00
Markus Wick
583c2b8a0c
Merge pull request #11181 from JosJuice/jitarm64-25-bit-urshr
...
JitArm64: Reimplement Force25BitPrecision
2022-10-22 10:26:07 +02:00
Markus Wick
5c7b5514ed
Merge pull request #11148 from JosJuice/jitarm64-remove-cdts-inst
...
JitArm64: Remove unnecessary instruction from ConvertDoubleToSingle
2022-10-22 10:10:23 +02:00
JosJuice
4dbf0b8e90
JitArm64: Reimplement Force25BitPrecision
...
The previous implementation of Force25BitPrecision was essentially a
translation of the x86-64 implementation. It worked, but we can make a
more efficient implementation by using an AArch64 instruction I don't
believe x86-64 has an equivalent of: URSHR. The latency is the same as
before, but the instruction count and register count are both reduced.
2022-10-22 10:03:52 +02:00
Jordan Woyak
d9d6428189
WiimoteEmu: Replace shinkansen MixedTriggers with Triggers.
2022-10-22 02:42:40 -05:00
Jordan Woyak
d705b8d4b8
WiimoteEmu: Reorder shinkansen buttons in UI.
2022-10-22 02:37:28 -05:00
Markus Wick
bba38a3642
Merge pull request #11182 from JosJuice/aarch64-emit-shift-imm
...
Arm64Emitter: Combine immh and immb for Emit(Scalar)ShiftImm
2022-10-22 09:23:06 +02:00
Jordan Woyak
5ed0543430
GCAdapter: Process pad state in read thread and other general cleanups.
2022-10-22 00:38:59 -05:00
Shawn Hoffman
2b43f96899
WinUpdater: Defer modifying any files until Updater.exe
...
Fixes https://bugs.dolphin-emu.org/issues/12151
2022-10-21 19:14:00 -07:00
Léo Lam
79e09c3731
Merge pull request #11186 from GaryOderNichts/ios/device_creation
...
IOS::HLE::Kernel::InitIPC: Replace s_ios check with Core::IsRunning
2022-10-21 21:17:58 +02:00
GaryOderNichts
2fb45660b3
IOS::HLE::Kernel::InitIPC: Replace s_ios check with Core::IsRunning
2022-10-21 20:38:02 +02:00
JMC47
00e23da607
Merge pull request #11051 from shuffle2/update-vcredist
...
WinUpdater: Check OS and VC++ Redist versions
2022-10-21 13:55:51 -04:00
JMC47
9222956acd
Merge pull request #10859 from tellowkrinkle/UniformBufferSize
...
VideoCommon: Increase uniform stream buffer size to 64mb
2022-10-20 17:13:31 -04:00
JosJuice
84375a91d9
Arm64Emitter: Combine immh and immb for Emit(Scalar)ShiftImm
...
This simplifies the callers of EmitShiftImm and EmitScalarShiftImm.
2022-10-19 20:20:39 +02:00
JMC47
9aece1810c
Merge pull request #10836 from iwubcode/d3d_uint_fix
...
VideoCommon: fix uint shader compiler error when using d3d
2022-10-18 12:12:08 -04:00
Lobsterzelda
486a523e0d
IOS: Simplify IOS::HLE::Device savestate method
2022-10-17 23:11:04 -04:00
TellowKrinkle
6fd933915b
VideoBackends:Vulkan: Improve backend multithreading
...
Makes the multiple threads actually able to run at the same time
2022-10-17 00:05:35 -05:00
Admiral H. Curtiss
10f973a87f
Merge pull request #11122 from K0bin/descriptor-overhaul
...
VideoBackends:Vulkan: Allocate descriptor pools as needed
2022-10-17 04:25:35 +02:00
Admiral H. Curtiss
9992a198f1
IOS/NetKDRequest: Don't abort on first unset bit in subtask mask.
2022-10-16 20:43:59 +02:00
Admiral H. Curtiss
cbc96adfd2
VFFUtil: Invalidate window on mount.
2022-10-16 18:06:51 +02:00
Admiral H. Curtiss
b1725dfb33
Zero-initialize structures passed to FatFs functions.
2022-10-16 17:12:04 +02:00
Robin Kertels
6992b0d8e1
VideoBackends:Vulkan: Allocate descriptor pools as needed
2022-10-16 17:04:35 +02:00
JosJuice
09f9a58859
Jit64: Add dispatcher_no_timing_check jump target
...
The new `dispatcher_no_timing_check` is the same as `dispatcher_no_check`
except it includes the "stepping check" in debug mode. This lets us avoid
the `m_enable_debugging ? dispatcher : dispatcher_no_check` dance.
2022-10-16 11:22:34 +02:00
Admiral H. Curtiss
c0476fdac3
Merge pull request #11072 from SketchMaster2001/wiiconnect24
...
Add initial WiiConnect24 support
2022-10-16 04:31:28 +02:00
SketchMaster2001
e413d7f5ec
Add initial WiiConnect24 support
2022-10-16 04:19:36 +02:00
Admiral H. Curtiss
fbe782f1a9
Merge pull request #11077 from JosJuice/jitasm-no-breakpoint
...
Jit64: Remove breakpoint check from JitAsm.cpp
2022-10-16 04:02:12 +02:00
JosJuice
351d095fff
JitArm64: Optimize a few tail calls
...
Maybe "tail call" isn't quite the right term for what this code
is doing, since it's jumping to the dispatcher rather than
returning, but it's the same optimization as for a tail call.
2022-10-15 21:45:44 +02:00
JosJuice
2a5f4a2390
Jit64: Don't use fregsIn in HandleNaNs
...
fregsIn will include FD for double-precision instructions, since for
dependency tracking purposes the instruction does read the upper
half of FD. This is not what we want in HandleNaNs.
The consequence of this bug is that if an instruction was supposed to
output a NaN and FD happens to contain a NaN and FD happens to be the
same register as an unused register in the instruction encoding, the
NaN in FD could get used as the output instead of the correct NaN.
This isn't known to affect any games, which isn't especially surprising
considering that there's only one game that needs AccurateNaNs anyway.
2022-10-15 18:11:40 +02:00
Admiral H. Curtiss
cd1f89a02b
Merge pull request #11138 from JosJuice/jit64-quiet-nans
...
Jit64: Turn SNaN into QNaN in HandleNaNs
2022-10-15 18:06:40 +02:00
Admiral H. Curtiss
85f7cf7c1e
Merge pull request #11169 from JosJuice/jit64-speculative-constants-dispatcher
...
Jit64: Jump to dispatcher_no_check from InitializeSpeculativeConstants
2022-10-15 17:46:22 +02:00
JosJuice
ec6a4115eb
Jit64: Jump to dispatcher_no_check from InitializeSpeculativeConstants
...
Jumping to `dispatcher` requires first subtracting the downcount,
otherwise `dispatcher` may unpredictably jump to CoreTiming::Advance,
which could break determinism compatibility with JitArm64. We should
jump to `dispatcher_no_check` instead.
2022-10-15 17:21:38 +02:00
JosJuice
b9aed428e8
Jit64: Remove breakpoint check from JitAsm.cpp
...
The breakpoint check in Jit.cpp makes it redundant.
Normally this redundant check doesn't cause any issues, but if you
create a breakpoint and enable logging without breaking, you get two
log messages if the breakpoint is at the beginning of a block. See
https://bugs.dolphin-emu.org/issues/13044 .
This is also a tiny performance improvement for when debugging is
active, since we no longer check for breakpoints for blocks that never
had any breakpoints to begin with.
2022-10-15 17:06:32 +02:00
JosJuice
dbf5dca11c
JitArm64: FIFO optimization improvements
...
JitArm64 port of 789975e
.
2022-10-15 12:57:18 +02:00
Jordan Woyak
9c1a936ca6
WiimoteEmu: Do send a status report on connection when an extension is already attached.
2022-10-15 03:35:01 -05:00
Lobsterzelda
65c7304bd4
VideoInterface: Simplify VideoInterface savestate code
...
VideoInterface: Simplify savestate code in VideoInterface
2022-10-13 15:21:22 -04:00
Admiral H. Curtiss
e47af664cc
HW: Move MemoryInterface variables to Core::System.
2022-10-13 04:28:17 +02:00
Admiral H. Curtiss
06f74bd7d1
Merge pull request #11152 from jordan-woyak/wm-emu-ir-point-size
...
WiimoteEmu: Improve simulated IR point size accuracy.
2022-10-13 02:18:58 +02:00
Pokechu22
ae7b14887b
Remove varargs support from LOG_VULKAN_ERROR
...
Nothing currently uses it. It could theoretically be replaced with fmt support, but I don't think the LOG_VULKAN_ERROR macro is that useful and it'd be better to replace it with regular logging instead.
2022-10-12 16:50:51 -07:00
Pokechu22
f9fe25291d
Remove most uses of StringFromFormat in favor of fmt
2022-10-12 16:50:47 -07:00
Mai
a5fa95adfd
Merge pull request #11151 from jordan-woyak/quat-fix
...
Fix some bad quaternion math.
2022-10-12 17:35:50 +00:00
Mai
1f8b196d6d
Merge pull request #11158 from jordan-woyak/abs-function
...
Input: Add "abs" input expression function.
2022-10-12 17:35:12 +00:00
Jordan Woyak
f5b9049421
Input: Add "abs" input expression function.
2022-10-11 19:28:21 -05:00
Jordan Woyak
bf53e14abe
WiimoteEmu: Fix gyroscope/quaternion conversion math.
2022-10-11 15:01:33 -05:00
Jordan Woyak
3939b32ed6
WiimoteEmu: Improve simulated IR point size accuracy.
2022-10-11 14:57:04 -05:00
Lioncash
dbfb8408d9
HW: Use unsigned indices in RegisterMMIO where applicable
...
base is an unsigned variable, so we can make things little more
consistent by making the loop index unsigned so we aren't doing bit
arithmetic with signed types.
MemoryInterface already does this, so we can leave it alone.
No behavioral changes, just a consistency thing.
2022-10-11 09:27:34 -04:00
Minty-Meeo
a84633f748
Remove #pragma once in DesiredWiimoteState.cpp
...
That shouldn't be there...
2022-10-11 01:16:56 -05:00
Jordan Woyak
6eb1f8beba
Common/Matrix: Fix Quaternion Norm function.
2022-10-10 21:16:35 -05:00
Admiral H. Curtiss
a056a1366f
Merge pull request #11131 from Pokechu22/cp-state-savestate-mistakes
...
Include tangent/binormal cache in savestates and simplify saving CP state
2022-10-11 03:42:17 +02:00
Pokechu22
ffed23c059
Simplify saving CP state
...
Rather than makring some parts of VertexLoaderManager dirty in some places and some in others, do it all in VideoState. Also, since CPState no longer contains pointers/non-CP data after d039b1bc0d
, we can just use p.Do on it instead of manually saving each field.
2022-10-09 19:32:59 -07:00
Admiral H. Curtiss
333ede5416
Merge pull request #11136 from AdmiralCurtiss/gqr-array
...
Jit64: Convert constantGqr to std::array.
2022-10-10 02:13:30 +02:00
Pokechu22
05f3bbfa4d
Include tangent/binormal cache in savestates
...
This theoretically matters for RS2/RS3, although in practice these games reconfigure it each frame so it shouldn't matter for savestates.
2022-10-09 16:21:49 -07:00
Jordan Woyak
c3ceee8967
DolphinQt: Make "All Devices" mapping hopefully less confusing.
2022-10-09 17:27:25 -05:00
JosJuice
bf492c1ff3
JitArm64: Fix register number typo
...
I think this typo was actually ignored by the code, but nevertheless,
it should be fixed.
2022-10-09 16:46:09 +02:00
JosJuice
04628034bc
JitAsm64: Reorder instructions in routines to allow macro-op fusion
...
Micro-optimization. Some CPUs can fuse CMP+B, TST+B, arith+CBZ, etc.
I also moved things around for CMP+CSET and TST+CSET - which I'm not sure
if any CPUs support - but it doesn't hurt anything, so I might as well.
2022-10-09 16:46:09 +02:00
JosJuice
6e01ab56fa
JitArm64: Remove unnecessary instruction from ConvertDoubleToSingle
...
The upper bits are masked away by the preceding LSR, and the lower bits
are masked away by the following BFXIL.
2022-10-09 14:17:18 +02:00
Admiral H. Curtiss
1647fa350b
Merge pull request #10804 from iwubcode/graphics-mod-input-output-structs
...
VideoCommon: add structures to graphics mods internal API
2022-10-09 13:17:11 +02:00
Admiral H. Curtiss
4c7fcf58b0
Merge pull request #11140 from JosJuice/jit64-inaccurate-single-fprf
...
Jit64: Fix single FPRF when !jo.accurateSinglePrecision
2022-10-09 13:08:53 +02:00
JosJuice
c361f9155b
Jit64: Turn SNaN into QNaN in HandleNaNs
...
Improves accuracy but isn't known to affect any games.
This turned out to be fairly convenient to implement; ORing with the
PPC default NaN will quieten SNaNs and do nothing to QNaNs.
2022-10-09 09:49:52 +02:00
iwubcode
bc360584a3
VideoCommon: add structures to graphics mods to allow for future adding or removing parameters with less code overhead
2022-10-09 00:00:01 -05:00
Admiral H. Curtiss
6cf99195c6
Merge pull request #11142 from JosJuice/jit64-handle-nans-no-output
...
Jit64: Remove HandleNaNs's xmm_out parameter
2022-10-09 04:16:57 +02:00
Admiral H. Curtiss
bfbc04ef5e
ENetUtil: Check return values of ENet functions in SendPacket().
2022-10-09 02:39:38 +02:00
Admiral H. Curtiss
66684a392f
Deduplicate NetPlayServer::Send() and NetPlayClient::Send() into ENetUtil::SendPacket().
2022-10-09 02:25:28 +02:00
Admiral H. Curtiss
da27a3e6bc
Merge pull request #11095 from K0bin/misc-vulkan
...
Remove special treatment for Android in video settings
2022-10-08 22:24:30 +02:00
TryTwo
1ed6028af4
NewBreakpointDialog: Add a help message for conditionals.
2022-10-08 13:23:24 -07:00
Admiral H. Curtiss
1dd30b58f3
Merge pull request #11143 from K0bin/cmd_buffer_cleanup-fix
...
VideoBackends:Vulkan: Fix command buffer cleanup
2022-10-08 22:07:58 +02:00
Robin Kertels
332824f7d5
VideoBackends:Vulkan: Fix command buffer cleanup
2022-10-08 21:40:33 +02:00
JosJuice
4b8a720c9b
Jit64: Remove HandleNaNs's xmm_out parameter
...
All HandleNaNs does with the xmm_out parameter is emit MOVAPD at the end
if xmm_out != xmm. The caller might as well do that themselves.
2022-10-08 19:49:30 +02:00
JosJuice
0b1fdee289
Jit64: Fix single FPRF when !jo.accurateSinglePrecision
...
jo.accurateSinglePrecision is always true, so it's not like this
matters much...
2022-10-08 18:35:46 +02:00
Admiral H. Curtiss
1c2182d069
Merge pull request #11134 from Pokechu22/memmap-remove-io-size
...
Memmap: Remove unused IO size field
2022-10-08 13:59:44 +02:00
Admiral H. Curtiss
e7219f7389
Jit64: Convert constantGqr to std::array.
2022-10-08 13:54:50 +02:00
TellowKrinkle
fd2680d8b4
VideoBackends:Metal: Use a temporary buffer for large texture uploads
2022-10-08 04:46:07 -05:00
TellowKrinkle
a13f09433c
VideoBackends:Metal: Add config option to use presentDrawable
2022-10-08 04:46:07 -05:00
TellowKrinkle
5a1b90c7f3
VideoBackends:Metal: Explicitly disable arc
...
Makes it easier to enable arc elsewhere without breaking the Metal backend
2022-10-08 04:46:07 -05:00
TellowKrinkle
c08de82e90
VideoBackends:Metal: Bring back unified memory config
...
Turns out it was helpful. (Most improvement in ubershaders.) This time with much better auto mode.
2022-10-08 04:46:05 -05:00
TellowKrinkle
93ce7bf344
VideoBackends:Metal: Unroll lighting loop
2022-10-08 04:44:48 -05:00
TellowKrinkle
45ee1be6da
VideoBackends:Metal: Properly set vsync on creation
2022-10-08 04:44:48 -05:00
TellowKrinkle
274d4679ca
VideoBackends:Multiple: More GPUs with broken subgroup ops
2022-10-08 04:44:48 -05:00
Admiral H. Curtiss
1abffc0b05
PPCAnalyst: Remove unused variables in BlockStats.
2022-10-08 03:30:56 +02:00
Admiral H. Curtiss
a5217c07b8
PPCAnalyst: Remove unused variables and methods in BlockRegStats.
2022-10-08 03:26:42 +02:00
Admiral H. Curtiss
6a2ed5758e
JitCache: Erase address from noSpeculativeConstantsAddresses when block is invalidated.
2022-10-08 02:44:36 +02:00
Pokechu22
be65e96991
Memmap: Remove unused IO size field
...
This existed in the initial megacommit (though I don't know why) as IO_SIZE. It was used in Memmap's Init() to compute totalMemSize, but I don't know if it actually did anything then. That use was removed in 2d0f714546
, but the constant persisted until cc858c63b8
, when it became a static variable.
2022-10-07 17:24:51 -07:00
TryTwo
fb79c04cf1
MemoryView auto updateDebugger. Implement base codetrace logic. Add register breakpoints. Add CodeViewWidget autostepping to track a value.Debugger
2022-10-06 22:17:22 -07:00
smurf3tte
85cb4d1bc5
Support memory reads/writes from breakpoint expressions
...
Co-authored-by: TryTwo <taolas@gmail.com>
2022-10-06 21:34:44 -07:00
smurf3tte
1224575b0b
Add cast expression functions u8(), s8(), u16(), etc.
...
This allows for easy reinterpretation of GPRs in an expression.
Co-authored-by: TryTwo <taolas@gmail.com>
2022-10-06 21:34:44 -07:00
smurf3tte
7842f9a715
Debugger: Initial implementation of conditional breakpoints
...
Expression class to store compiled expressions and associated variable list.
Co-authored-by: TryTwo <taolas@gmail.com>
2022-10-06 21:34:44 -07:00
Lobsterzelda
d2db451eba
HW/MemoryInterface: Add data to savestates and initialize on boot.
2022-10-07 01:31:56 +02:00
Admiral H. Curtiss
691135dbc3
HW: Move SerialInterface variables to Core::System.
2022-10-06 22:08:20 +02:00
Pokechu22
4d33f6af7c
GCMemcard: Remove manual std::vector handling in DoState
2022-10-06 11:25:36 -07:00
Pokechu22
e8221d7948
Common/PointerWrap: Remove DoPOD
...
This was added in 385d8e2b15
, but became somewhat redundant with Do in 4c7bbd96e4
, and completely redundant now that std::is_trivially_copyable_v is well-supported.
2022-10-06 11:25:36 -07:00
Mai
7498eb1e6c
Merge pull request #11121 from AdmiralCurtiss/globals-exi
...
HW: Move ExpansionInterface variables to Core::System.
2022-10-06 10:33:22 -04:00
Admiral H. Curtiss
26318e2c51
HW: Move ExpansionInterface variables to Core::System.
2022-10-06 01:19:29 +02:00
Admiral H. Curtiss
de5a98a3fa
Merge pull request #11120 from AdmiralCurtiss/gci-open-fail
...
HW/GCMemcardDirectory: Add error message if opening GCI fails.
2022-10-06 01:09:47 +02:00
Admiral H. Curtiss
662caf91ac
HW/GCMemcardDirectory: Add error message if opening GCI fails.
2022-10-05 19:56:05 +02:00
Admiral H. Curtiss
cf094eb415
Merge pull request #11117 from JosJuice/jitarm64-imm-not-dirty
...
JitArm64: Fix BindToRegister in case Immediate && !set_dirty
2022-10-05 19:31:44 +02:00
JMC47
4b6086b20a
Merge pull request #11098 from K0bin/refresh-efb-cache
...
VideoCommon: Update EFB peek cache on draw done and tokens
2022-10-04 22:40:58 -04:00
Admiral H. Curtiss
eea31db781
Vulkan/CommandBufferManager: Show error code in PanicAlerts.
2022-10-04 19:50:23 +02:00
Admiral H. Curtiss
9c944d5734
HW: Move VideoInterface variables to Core::System.
2022-10-04 02:25:12 +02:00
JosJuice
51ee05cb35
Android: Use input override system for touch controls
...
This is the first step of getting rid of the controller indirection
on Android. (Needing a way for touch controls to provide input
to the emulator core is the reason why the controller indirection
exists to begin with as far as I understand it.)
2022-10-03 22:04:09 +02:00
JosJuice
b296248b49
DolphinQt: Use input override system for TAS input windows
...
This lets the TAS input code use a higher-level interface for
overriding inputs instead of having to fiddle with raw bits.
WiiTASInputWindow in particular was messy with how much
controller code it had to re-implement.
2022-10-03 22:04:09 +02:00
JosJuice
8fd25259ee
ControllerEmu: Round input floats instead of casting, part 2
...
Like 3bc4968
but for Wii Remote extensions. I'm doing this to ensure
that TAS input values will still roundtrip after the next commit.
2022-10-03 22:04:08 +02:00
JosJuice
cb16d20f2d
ControllerEmu: Add new "input override" system
2022-10-03 22:00:21 +02:00
JosJuice
f4f189c51f
JitArm64: Rename BindToRegister parameters for clarity
2022-10-03 21:41:34 +02:00
Pokechu22
cb6d476538
Merge pull request #11106 from vpelletier/dsp_doc_bloop
...
docs/DSP: Trivial adjustment to BLOOP{,I} sub-operation order
2022-10-03 11:29:03 -07:00
Admiral H. Curtiss
e137f7f878
WiimoteEmu: Rewrite serialization of DesiredWiimoteState to optimize for network bandwidth.
2022-10-02 23:25:15 +02:00
Admiral H. Curtiss
ae4b89441c
Qt/WiimoteControllersWidget: Disable remote Wiimote configuration during netplay.
2022-10-02 23:25:15 +02:00
Admiral H. Curtiss
a1563f2def
Netplay: Implement batching for Wiimotes.
2022-10-02 23:25:10 +02:00
Admiral H. Curtiss
aade584180
Netplay: Completely rewrite Wiimote syncing logic to be similar to the GameCube controller one.
2022-10-02 23:22:02 +02:00
Admiral H. Curtiss
f8518b2ff6
WiimoteEmu: Add serialization for DesiredWiimoteState.
2022-10-02 23:14:36 +02:00
Admiral H. Curtiss
a2dadbb2f0
Wiimote: Separate the Input system state update from the emulated state update.
2022-10-02 23:14:36 +02:00
Admiral H. Curtiss
bb5943ae77
Wiimote: Separate the Wiimote index in the Input system from the index of the Wiimote in the emulated system.
2022-10-02 23:14:36 +02:00
Admiral H. Curtiss
b67ffb9ab5
WiimoteEmu: Make Reset() deterministic under WantsDeterminism().
2022-10-02 23:14:36 +02:00
Admiral H. Curtiss
466f0b377b
WiimoteEmu: Update extensions from DesiredWiimoteState.
2022-10-02 23:14:35 +02:00
Admiral H. Curtiss
e7543a9e05
WiimoteEmu: Update MotionPlus status from DesiredWiimoteState.
2022-10-02 23:14:35 +02:00
Admiral H. Curtiss
26fd4ea361
WiimoteEmu: Update IR camera status from DesiredWiimoteState.
2022-10-02 23:14:35 +02:00
Admiral H. Curtiss
9669722dfc
WiimoteEmu: Update accelerometer status from DesiredWiimoteState.
2022-10-02 23:14:35 +02:00
Admiral H. Curtiss
a39f82cb1f
WiimoteEmu: Update button status from DesiredWiimoteState.
2022-10-02 23:14:34 +02:00
Admiral H. Curtiss
52424fe327
Qt: Allow opening controller settings during netplay.
2022-10-02 23:14:34 +02:00
Admiral H. Curtiss
bc47a9a31a
Qt/WiimoteControllersWidget: Disable potentially breaking stuff during netplay.
2022-10-02 23:13:26 +02:00
Admiral H. Curtiss
37ae9ab524
Qt/GamecubeControllersWidget: Disable dropdowns during netplay.
2022-10-02 23:10:43 +02:00
JosJuice
42775eed36
JitArm64: Fix BindToRegister in case Immediate && !set_dirty
...
Fixes a Rogue Squadron II regression from 9d73583
.
This set_dirty stuff is pretty tricky to reason about. I thought I
was clever when coming up with set_dirty, but maybe I was too clever
for my own good...
2022-10-02 22:38:00 +02:00
Admiral H. Curtiss
95cace837a
HW: Move DSP variables to Core::System.
2022-10-02 05:13:55 +02:00
Admiral H. Curtiss
c84835c53c
Merge pull request #11114 from JosJuice/jitarm64-divwx-imm
...
JitArm64: Fix divwx BindToRegister condition
2022-10-02 01:10:48 +02:00
Admiral H. Curtiss
6911e1b730
Merge pull request #11113 from DivineWinds/translate_tooltip
...
DolphinQt/HacksWidget: Make backend name in GPU Texture Decoding/Bounding Box tooltip translatable
2022-10-02 00:16:25 +02:00
Admiral H. Curtiss
f3a23db0e0
Core/State: Minor cleanup around the undo load state buffer.
2022-10-02 00:01:01 +02:00
Admiral H. Curtiss
e0d30e371c
Core/State: Rewrite threading behavior when multiple Save requests are happening. Should improve responsiveness when eg. mashing a save state button.
2022-10-02 00:00:29 +02:00
Admiral H. Curtiss
79efd5df1e
Common/WorkQueueThread: Make Shutdown() public, so users can wait for all currently queued tasks to finish when shutting down the thread.
2022-10-01 23:58:52 +02:00
Robin Kertels
4e204a9a1a
VideoCommon: Remove special treatment for Android in video settings
2022-10-01 20:53:02 +02:00
JosJuice
8984777749
JitArm64: Call GetImm before BindToRegister
...
In case the register we're binding is the same as the immediate register,
we should fetch the immediate before calling BindToRegister. The way
the register cache currently works, calling GetImm after BindToRegister
actually does work, but it's better to not rely on it.
2022-10-01 20:44:51 +02:00
JosJuice
8902d2fe3a
JitArm64: Fix divwx BindToRegister condition
...
a is being used both as an immediate and as a register here.
Since it's being used as a register, it must be loaded.
2022-10-01 19:29:41 +02:00
Robin Kertels
779fe13e62
VideoCommon: Update EFB peek cache on draw done and tokens
...
Massively improves performance in Mario Galaxy on Android.
2022-10-01 18:08:38 +02:00
DivineWinds
37892a8611
DolphinQt/HacksWidget: Make backend name in GPU Texture Decoding/Bounding Box tooltip translatable
2022-10-01 12:32:49 +03:00
JMC47
c196c47e81
Merge pull request #11090 from K0bin/submit-rework
...
Vulkan: Raise number of command buffers
2022-09-30 20:15:25 -04:00
Robin Kertels
e5fb9c9adf
VideoBackends:Vulkan: Raise number of command buffers
...
Avoid waiting for earlier submissions when we flush more often.
The vertex manager will flush more often if the game accesses the EFB
on the CPU, to give the GPU a head start.
2022-10-01 01:26:04 +02:00
Robin Kertels
fba7d35f94
VideoBackends:Vulkan: Associate descriptor pool with frame rather than command buffer
2022-10-01 01:26:04 +02:00
Robin Kertels
ed75a58061
VideoBackends:Vulkan: Decouple available command buffers from frames in flight
2022-10-01 01:26:04 +02:00
Robin Kertels
e8fa867f14
VideoBackends:Vulkan: Only synchronize with submission thread when necessary
...
We only need to synchronize with the submission thread
when submitting on the GPU thread or when waiting for a command buffer.
2022-10-01 01:26:04 +02:00
Robin Kertels
2e6d8d6575
VideoBackends:Vulkan: Fix validation error around surface_capabilities2
2022-10-01 01:26:03 +02:00
JMC47
68eda7f887
Merge pull request #11084 from K0bin/qcom-workaround
...
Vulkan: Workaround slow vkCmdCopyImageToBuffer on QCom
2022-09-30 15:33:00 -04:00
Robin Kertels
81c817c54d
VideoBackends:Vulkan: Workaround slow vkCmdCopyImageToBuffer on QCom driver
2022-09-30 21:13:42 +02:00
Vincent Pelletier
12142c4fa8
DSPSpy: Add st3 BLOOP{,I} tests.
2022-09-30 11:07:41 +00:00
Vincent Pelletier
556d18f865
DSPSpy: Unhide stack registers
...
The screen real-estate is already reserved, the values are dumped and
restored by the on-DSP code, why not make something out of these values ?
Allows following:
- where exactly send_back was called from ($st1)
- the boundaries and progress of the innermost BLOOP{,I} ($st0, 2 and 3)
up to send_back's call
2022-09-30 11:07:41 +00:00
Sepalani
481ddd1308
NetworkCaptureLogger: Allow PCAP shared read access on Windows
2022-09-29 23:08:25 +04:00
JosJuice
2e8d775df1
Jit64: boolX formatting fixes
2022-09-29 20:27:15 +02:00
Mai
1f2ec9afd6
Merge pull request #11052 from Tilka/shinkansen
...
Add emulated Shinkansen controller
2022-09-29 09:21:27 -04:00
Mai
e3e6c3dfa4
Merge pull request #11088 from JosJuice/uicommon-set-enable-alert
...
Move a SetEnableAlert call to UICommon
2022-09-29 09:09:29 -04:00
Mai
6805c9dd0d
Merge pull request #11108 from AdmiralCurtiss/fat-fs-callbacks
...
FatFsUtil: Add ability to provide callbacks for the FatFs code.
2022-09-29 09:08:12 -04:00
Mai
0c19a1d87c
Merge pull request #11100 from Pokechu22/software-settings-merge
...
Use the same settings for the software renderer as other backends
2022-09-29 09:05:51 -04:00
Mai
3fab5b2338
Merge pull request #11097 from JosJuice/android-launch-wii-menu-check
...
Android: Improve checking in MainPresenter.launchWiiSystemMenu
2022-09-29 09:03:46 -04:00
Mai
865348cfb1
Merge pull request #11103 from JosJuice/android-gamefilecache-not-null
...
Android: Allocate GameFileCache on GUI thread
2022-09-29 09:02:47 -04:00
Pokechu22
87f84d4f54
Debugger/CodeWidget: Update callstack/callers/calls on symbol changes
...
Before, only the symbols box would update. However, if you edit the symbol of a function in the call stack (which seems like something that would happen reasonably often while debugging), the call stack would be out of date until it was updated by clicking on it. Callers and calls were more of an edge case; for them to be out of date, you would need to right-click on an instruction in a function other than the one containing the currently-selected instruction (though it would also affect recursive functions).
2022-09-28 21:01:37 -07:00
Admiral H. Curtiss
3182d9178c
FatFsUtil: Add ability to provide callbacks for the FatFs code.
2022-09-29 05:16:21 +02:00
Vincent Pelletier
fbf9d6ea17
SI: Ignore non-standard setGameID command
...
Avoids a panic when loading recent swiss. Not enough to have it run,
unfortunately.
2022-09-28 22:29:50 +00:00
Admiral H. Curtiss
dafe2c785a
Merge pull request #9481 from Sintendo/jit64boolx
...
Jit64: boolX constant optimizations
2022-09-28 23:40:26 +02:00
Admiral H. Curtiss
95615ab91b
Merge pull request #11096 from Sintendo/arm64boolx
...
JitArm64: boolX constant optimizations
2022-09-28 21:58:06 +02:00
Admiral H. Curtiss
32bdc54869
Merge pull request #11101 from Pokechu22/backend-multithreading-enabled
...
DolphinQt: Only enable the backend multithreading checkbox if the backend supports it
2022-09-28 21:57:37 +02:00
Admiral H. Curtiss
4de70f1e99
Merge pull request #11099 from Pokechu22/draw_done_and_token_stats
...
VideoCommon: Add statistics for draw done and token commands
2022-09-28 21:56:54 +02:00
Vincent Pelletier
85d2358157
EXI_DeviceMemoryCard: Drop comment about ChipErase behaviour
...
Tested on an official DOL-014 (251 blocks) memory card by executing the
0xf4 command on a card with content along its entire length and then
dumping the whole card: it reads as 0xff all the way through.
Therefor, the current implementation is already consistent with hardware.
2022-09-28 11:55:46 +00:00
JosJuice
d4709ce0ba
Android: Remove unnecessary Context parameters
2022-09-27 19:09:47 +02:00
JosJuice
45901f64b5
Android: Use synchronized methods for GameFileCache
...
Compared to the previous solution of using big `synchronized` blocks,
this makes GameFileCacheManager's executor thread release and re-lock
the lock when possible, giving the GUI thread a chance to do a
(comparatively) quick getOrAdd call if it needs to.
2022-09-27 19:06:10 +02:00
JosJuice
51debaeb47
Revert "Android: Don't hold gameFileCache lock during updateAdditionalMetadata"
...
This reverts commit fb265b610d
.
The optimization in that commit is safe when the executor thread is
writing and the GUI thread is reading, but I had failed to take into
account that it's unsafe when the GUI thread is writing and the executor
thread is reading. (The native UpdateAdditionalMetadata function loops
through m_cached_files, which is unsafe if another thread is adding
elements to m_cached_files simultaneously.)
Losing out on this optimization isn't too bad, because
719930bb39
makes it very unlikely that
both threads will want the lock at the same time.
2022-09-27 19:06:05 +02:00
JosJuice
481df6b660
Android: Allocate GameFileCache on GUI thread
...
This is intended to fix https://bugs.dolphin-emu.org/issues/13053 ,
which is a crash caused by sGameFileCache being null when addOrGet
is called.
2022-09-27 18:47:54 +02:00
JosJuice
f857fa6529
Android: Add s prefix to static variables in GameFileCacheManager
2022-09-27 18:47:54 +02:00
Pokechu22
3d0cd8b076
DolphinQt: Remove software renderer settings widget
...
Thus, the software renderer uses the same settings as everything else, fixing https://bugs.dolphin-emu.org/issues/13051 .
2022-09-26 19:43:57 -07:00
Pokechu22
b90d23158f
Software: Fix mipmaps and uneven strides in SWTexture
...
I think this is only used for texture dumping, but this resolves some failed assertions and glitchy results.
2022-09-26 19:43:57 -07:00
Pokechu22
94a77bc573
DolphinQt: Only enable the backend multithreading checkbox if the backend supports it
2022-09-26 19:25:11 -07:00
Pokechu22
a6c00c7633
D3D12: Fix backend multithreading incorrectly being marked as supported
2022-09-26 19:24:52 -07:00
Pokechu22
56fce3ba8a
Software: Remove dedicated texture/frame dumping infrastructure
...
Texture dumping can already be done using VideoCommon's system (and in fact the same setting already enabled *both* of these). Dumping objects/TEV stages/texture fetches doesn't currently have an equivalent, but could be added to the FIFO player instead.
2022-09-26 18:25:54 -07:00
Pokechu22
39569392bd
VideoCommon: Add statistics for draw done and token commands
2022-09-26 16:19:54 -07:00
Pokechu22
67ed4fa92d
Common/Image: Add unit to log message
2022-09-26 15:04:15 -07:00
JosJuice
2c216c9a2b
Android: Improve checking in MainPresenter.launchWiiSystemMenu
...
Not only SystemMenuNotInstalledDialogFragment requires directory
initialization to have completed, but also isSystemMenuInstalled.
2022-09-25 22:15:15 +02:00
Bram Speeckaert
4914ff25d6
JitArm64: boolX constant optimizations
...
A (partial) port of #9481 to ARM64. This commit adds special cases for
immediate values equal to 0 or 0xFFFFFFFF, allowing for more efficient
or no code to be generated.
2022-09-25 14:58:26 +02:00
Bram Speeckaert
9d73583ea3
JitArm64: Skip redundant imm to register writes
...
When a guest register is an immediate, it may be necessary to move this
value into a register. This is handled by gpr.R(), which lacks context
on how the register will be used. This leads to cases where the
immediate is written to a register, only for it to be overwritten. Take
for example this code generated by srwx:
0x5280031b mov w27, #0x18
0x53187edb lsr w27, w22, #24
gpr.BindToRegister() does have this context through the do_load
parameter, but didn't handle immediates. By adding this logic, we can
intelligently skip the write when do_load is false.
2022-09-25 10:04:51 +02:00
Admiral H. Curtiss
f106bc150a
Merge pull request #11083 from sepalani/bba-check
...
BBA/BuiltIn: Fix a crash during network stack exhaustion
2022-09-24 20:30:46 +02:00
Admiral H. Curtiss
63975556a4
Merge pull request #10175 from dreamsyntax/pause-on-panic
...
Core/DolphinQt: Add Pause on Panic Option for DSI Exceptions and Unknown Instruction
2022-09-24 20:28:09 +02:00
Admiral H. Curtiss
571e300e9e
Merge pull request #11047 from AdmiralCurtiss/netplay-save-options-rework
...
Netplay: Simplify save data options.
2022-09-24 20:26:05 +02:00
JosJuice
04072f0ce6
Integrate "Ignore for this session" better with config system
...
Because of the previous commit, this is needed to stop DolphinQt from
forgetting that the user pressed ignore whenever any part of the config
is changed.
This commit also changes the behavior a bit on DolphinQt: "Ignore for
this session" now applies to the current emulation session instead of
the current Dolphin launch. This matches how it already worked on
Android, and is in my opinion better because it means the user won't
lose out on important panic alerts in a game becase they played another
game first that had repeated panic alerts that they wanted to ignore.
For Android, this commit isn't necessary, but it makes the code cleaner.
2022-09-24 13:03:45 +02:00
JosJuice
16c71b9a35
Move a SetEnableAlert call to UICommon
...
This fixes a problem where changing the Use Panic Handlers setting on
Android wouldn't take effect until the app was restarted.
2022-09-24 12:35:10 +02:00
Admiral H. Curtiss
02a967f786
InputCommon: Add equality operators to RawValue.
2022-09-24 01:44:21 +02:00
Admiral H. Curtiss
24a1fe32f1
InputCommon: Make RawValue constructors constexpr.
2022-09-24 01:38:09 +02:00
Admiral H. Curtiss
70485472b1
Common/Matrix: Add equality operators to TVec2/3/4.
2022-09-24 01:38:01 +02:00
Admiral H. Curtiss
3fa9fdf57a
Merge pull request #11075 from AdmiralCurtiss/controller-gui-refresh
...
Qt/Controllers: Refresh GUI on settings change.
2022-09-24 00:14:54 +02:00
Sepalani
34858e934f
BBA/BuiltIn: Ignore UPnP request to itself
2022-09-23 20:54:26 +04:00
Sepalani
df53ebb59f
BBA/BuiltIn: Fix a crash during network stack exhaustion
2022-09-23 18:59:27 +04:00
Admiral H. Curtiss
9860b68b9c
Common: Add [[nodiscard]] to GetStringT().
2022-09-23 14:58:18 +02:00
Admiral H. Curtiss
4cb8914ad3
VolumeVerifier: Add missing assignment to summary_text.
2022-09-23 14:57:55 +02:00
Admiral H. Curtiss
f426e3cd79
Merge pull request #11039 from TryTwo/PR_MemoryWidget_MiniMenu
...
Debugger MemoryWidget: Create mini-menu at top of sidebar.
2022-09-23 04:22:10 +02:00
Admiral H. Curtiss
b7855a3a56
Merge pull request #11073 from Hibyehello/Fix-Metal-init
...
Add Metal as backend option with Vulkan Disabled
2022-09-23 04:21:23 +02:00
Admiral H. Curtiss
75c50223f2
Merge pull request #11078 from Minty-Meeo/mapfloat-tweak
...
Use std::llround in MapFloat
2022-09-23 04:18:03 +02:00
Admiral H. Curtiss
79c5d1b003
Merge pull request #10780 from OatmealDome/steam-windows
...
msbuild: Add property for creating Steam builds on Windows
2022-09-23 04:14:23 +02:00
JMC47
b0ac5ac6af
Merge pull request #10949 from Zopolis4/reprecated
...
Resolve C++20 deprecation warnings
2022-09-22 21:56:24 -04:00
Minty-Meeo
73dfcc15a5
Use std::llround in MapFloat
...
I don't see why not.
2022-09-22 11:30:32 -05:00
Shawn Hoffman
717c36bc43
WinUpdater: Check OS and VC++ Redist versions.
2022-09-20 15:57:50 -07:00
Admiral H. Curtiss
270ffa7351
Qt/WiimoteControllersWidget: Refresh GUI on settings change and refactor a bit.
2022-09-20 23:47:16 +02:00
Admiral H. Curtiss
a5dbf6b60d
Qt/GamecubeControllersWidget: Refresh GUI on settings change and refactor a bit.
2022-09-20 23:46:45 +02:00
Admiral H. Curtiss
019dc86b6f
Qt/CommonControllersWidget: Refresh GUI on settings change.
2022-09-20 23:46:36 +02:00
JMC47
22197c09a3
Merge pull request #10781 from tellowkrinkle/UberVertexLoader
...
VideoCommon: Add dynamic vertex loader for ubershaders to reduce pipeline count
2022-09-20 17:14:07 -04:00
JosJuice
6203c101f8
JitArm64: Enforce correct alignment of SPR_TL
2022-09-20 18:55:28 +02:00
TellowKrinkle
ee692abbe1
VideoBackends:Metal: Use BitField for stuffing bits in pipeline ids
...
Also removes cullmode all handling, it's handled in CPU and DX11 backend doesn't specially handle it either
2022-09-20 01:45:18 -05:00
Admiral H. Curtiss
d04e1ca96a
Merge pull request #11058 from shuffle2/updater-inflate
...
Updater: Move inflate intermediate buffer to heap and enlarge
2022-09-20 02:45:50 +02:00
JMC47
3b10bf04ac
Merge pull request #10808 from Pokechu22/vertex-loader-direct-normals-with-index3
...
VideoCommon: Fix direct normal+tangent+binormal with index3 set
2022-09-19 19:47:37 -04:00
Admiral H. Curtiss
0d095b4d9b
Netplay: Simplify save data options.
2022-09-20 01:37:32 +02:00
Admiral H. Curtiss
39314ac162
Add more logging around Wii save copying for Netplay.
2022-09-20 01:37:31 +02:00
TellowKrinkle
1eb3aaa548
VideoCommon: Use std::array in PortableVertexDeclaration
2022-09-19 16:28:24 -05:00
TellowKrinkle
28b31b8327
VideoBackends:Vulkan: Make dynamic vertex loader optional
...
Makes it easier to disable in the future if support for VK_EXT_vertex_input_dynamic_state is added
2022-09-19 16:28:24 -05:00
TellowKrinkle
dae56a24b8
VideoBackends:D3D12: Dynamic vertex loader support
2022-09-19 16:28:24 -05:00
TellowKrinkle
936b4d5d0d
VideoBackends:Vulkan: Dynamic vertex loader support
2022-09-19 16:28:24 -05:00
TellowKrinkle
7edc8b4e79
VideoBackends:Metal: Don't set primitive on ubershaders
2022-09-19 16:28:24 -05:00
TellowKrinkle
99533d2840
VideoCommon: Add separate pipeline usage for UberShaders
2022-09-19 16:28:24 -05:00
TellowKrinkle
d289e9c51c
VideoCommon: Compile a few extra pipelines
2022-09-19 16:28:24 -05:00
TellowKrinkle
d3dae1cd7e
VideoBackends:Metal: Dynamic vertex loader support
2022-09-19 16:28:24 -05:00
TellowKrinkle
4c629c2bee
VideoCommon: Add dynamic vertex loader to ubershaders
2022-09-19 16:28:23 -05:00
Admiral H. Curtiss
c21f2512c8
HW: Move g_SRAM to System.
2022-09-19 21:47:15 +02:00
Admiral H. Curtiss
0a517ebdbd
Core: Pass Netplay SRAM through boot process.
...
This removes the Netplay classes touching emulated hardware structures before emulation even starts.
2022-09-19 21:47:12 +02:00
Admiral H. Curtiss
9963637463
HW: Remove global state from functions in Sram.h.
2022-09-19 21:42:43 +02:00
Josh
1fd60aeb5d
Merge branch 'dolphin-emu:master' into Fix-Metal-init
2022-09-19 12:27:37 -05:00
Josh
ef13a54b0a
VideoBackends - Enable Metal without Vulkan
2022-09-19 11:28:34 -05:00
JosJuice
720b3f5519
Merge pull request #11071 from AdmiralCurtiss/netplay-settings-style
...
Netplay: Rename variable names in NetSettings to match style guide.
2022-09-19 17:55:36 +02:00
Pokechu22
d80201a57f
VertexLoaderARM64: Fix direct normal+tangent+binormal with index3 set
...
Fixes https://bugs.dolphin-emu.org/issues/12952
2022-09-18 23:33:24 -07:00
Pokechu22
f148de161f
VertexLoaderARM64: Specify the register to use as a parameter to ReadVertex
...
This also means that both a register and a vertex are always specified, though right now if the register is scratch1_reg the offset is always 0.
2022-09-18 23:33:24 -07:00
Pokechu22
ad644d5e92
VertexLoaderARM64: Merge GetAddressImm into GetVertexAddr
...
This way it more closely matches VertexLoaderX64, and is in general easier to understand.
2022-09-18 23:33:24 -07:00
Pokechu22
9a290c3d50
VertexLoaderARM64: Always use unscaled load/store instructions
...
The source and destination offsets will always be less than 255, so we can get rid of a lot of the complexity by doing this.
2022-09-18 23:33:24 -07:00
Pokechu22
a34d5e5960
Arm64Emitter: Add additional alignment assertions
...
Before, unaligned values would be silently ignored in most cases.
2022-09-18 23:33:24 -07:00
Pokechu22
afe5adb74d
VertexLoaderARM64: Use EnumMap for normal scales
2022-09-18 23:33:24 -07:00
Pokechu22
200676f4e3
VertexLoaderX64: Fix direct normal+tangent+binormal with index3 set
...
Fixes https://bugs.dolphin-emu.org/issues/12952
2022-09-18 23:33:23 -07:00
Pokechu22
5cc2f7729e
VertexLoaderX64: Use EnumMap for normal scales
2022-09-18 23:33:23 -07:00
Pokechu22
53ee1b50fe
VertexLoaderTest: Add NormalAll
...
This currently fails for direct with NormalIndex3 enabled (see https://bugs.dolphin-emu.org/issues/12952 ). The goal of this test is to be able to confidently say that that bug has been fixed.
2022-09-18 23:33:23 -07:00
Pokechu22
729498ab41
VertexLoaderTest: Add DirectAllComponents
...
We have one that does a similar thing, but only to measure speed and uses indices. This one verifies accuracy (and uses the largest possible input size by using direct components).
2022-09-18 23:33:23 -07:00
JMC47
6f4f5b0b7b
Merge pull request #11067 from K0bin/cache-vertex-size
...
OpcodeDecoding: Cache vertex sizes
2022-09-18 22:38:06 -04:00
Admiral H. Curtiss
bec4850fc3
Netplay: Rename variable names in NetSettings to match style guide.
2022-09-19 01:25:46 +02:00
Robin Kertels
2db74e7f21
OpcodeDecoding: Get vertex size from the loader
2022-09-19 01:14:53 +02:00
Robin Kertels
a6c6ec012c
VertexLoaderManager: Clean up and slightly speed up with templates
2022-09-19 01:14:49 +02:00
JosJuice
eec43ce3f3
Merge pull request #11068 from JosJuice/revert-vcredist
...
Revert "windows: distribute vcredist loose files"
2022-09-18 23:40:33 +02:00
Admiral H. Curtiss
07f86446a6
Netplay: Remove unused m_HostInputAuthority in NetSettings.
2022-09-18 23:00:08 +02:00
Admiral H. Curtiss
69ad2cc4d0
Merge pull request #11059 from AdmiralCurtiss/netplay-graceful-shutdown
...
NetPlayClient: Treat power button event as a netplay stop.
2022-09-18 00:00:44 +02:00
JosJuice
fec6f1bd5a
Revert "windows: distribute vcredist loose files"
...
This reverts commit 0837af4344
.
2022-09-16 10:33:39 +02:00
Robin Kertels
a31e36aeb7
VertexLoaderManager: Fix backwards preprocess check
...
Spotted by Pokechu22.
2022-09-15 23:56:04 +02:00
JMC47
32fba6dbd8
Merge pull request #11066 from K0bin/vertex-size-opt
...
Optimize GetVertexSize
2022-09-15 14:25:32 -04:00
Robin Kertels
fdcd2b7d00
VertexLoader: Inline GetSize
2022-09-15 12:50:15 +02:00
Robin Kertels
8aa214453a
VertexLoader: Optimize GetVertexSize
...
GetComponentSizes was unused, so we simplify this and get rid
of the branches.
2022-09-15 02:47:23 +02:00
Pierre Bourdon
1efb5b8800
Merge pull request #11063 from shuffle2/vcredist
...
windows: distribute vcredist loose files
2022-09-14 23:01:00 +02:00
JosJuice
09c07d4ff2
Merge pull request #11060 from t895/dividers
...
Android: Use material dividers
2022-09-14 22:43:18 +02:00
Shawn Hoffman
0837af4344
windows: distribute vcredist loose files
2022-09-14 13:15:45 -07:00
Charles Lombardo
33048d0d4c
Android: Use material dividers
2022-09-14 14:23:59 -04:00
Charles Lombardo
96d431b519
Android: Remove TabLayout workaround
2022-09-14 12:03:21 -04:00
Charles Lombardo
eb6a548735
Android: Change top app bar color on scroll
2022-09-13 21:31:30 -04:00
JosJuice
3420823002
Merge pull request #11043 from t895/nav-bar
...
Android: Match navigation bar color to background
2022-09-13 22:34:52 +02:00
JosJuice
351ebe668f
Merge pull request #11056 from t895/new-bars
...
Android: Add more top app bars
2022-09-13 21:14:30 +02:00
JosJuice
7f450f1d7e
Merge pull request #10626 from t895/glide
...
Android: Replace Picasso with Glide
2022-09-13 08:24:18 +02:00
Admiral H. Curtiss
bf331ffa45
NetPlayClient: Treat power button event as a netplay stop.
2022-09-13 01:26:45 +02:00
Admiral H. Curtiss
35f6d12acc
NetPlayClient: Consolidate stopping code to function.
2022-09-13 01:26:45 +02:00
Admiral H. Curtiss
c4b3f2302a
NetPlayClient: Consolidate Wiimote buffer waiting code to function.
2022-09-13 01:26:45 +02:00
Shawn Hoffman
7432b6ce91
Updater: Move inflate intermediate buffer to heap and enlarge
2022-09-12 03:35:03 -07:00
JosJuice
14f427d4cd
Merge pull request #11054 from t895/swipe-refresh
...
Android: Change swipe refresh colors to match other component colors
2022-09-12 09:05:14 +02:00
Charles Lombardo
8c477852f3
Android: Add more top app bars
2022-09-11 23:49:26 -04:00
Charles Lombardo
0e74acdd85
Android: Remove other color edge effect definitions
2022-09-11 15:10:27 -04:00
Charles Lombardo
63ff3c3830
Android: Change swipe refresh colors to match other component colors
2022-09-11 13:29:13 -04:00
Tillmann Karras
f5670f870e
Add emulated Shinkansen controller
2022-09-11 17:12:19 +01:00
JosJuice
702e7bad58
Merge pull request #11044 from t895/dialog-animations
...
Android: Add custom window animation to alert dialogs
2022-09-11 17:54:02 +02:00
JosJuice
713b535eb9
Merge pull request #11045 from t895/color-edge-effect
...
Android: Change color control highlight to system default
2022-09-11 13:15:13 +02:00
Mai
dbcf7fd2c9
Merge pull request #11049 from Tilka/tatacon
...
TaTaCon: fix possible hotswap problem
2022-09-11 05:12:12 -04:00
Mai
427dd75dfd
Merge pull request #11048 from AdmiralCurtiss/netplay-settings-boot-data
...
Netplay: Pass netplay settings via BootSessionData.
2022-09-11 05:11:39 -04:00
Admiral H. Curtiss
1732071a10
Netplay: Pass netplay settings via BootSessionData.
2022-09-11 04:18:26 +02:00
Charles Lombardo
e631dfc918
Android: Fix save state menu text color
2022-09-10 21:32:08 -04:00
Tillmann Karras
b418441f4a
TaTaCon: fix possible hotswap problem
2022-09-11 00:16:00 +01:00
Charles Lombardo
e77543abb2
Android: Change color control highlight to system default
2022-09-10 18:00:03 -04:00
Mai
4edb3a8074
Merge pull request #11041 from AdmiralCurtiss/global-state-audio
...
HW: Move AudioInterface variables to Core::System.
2022-09-10 17:10:17 -04:00
Charles Lombardo
bb398c8648
Android: Match navigation bar color to background
2022-09-10 17:08:31 -04:00
Mai
804af55b3a
Merge pull request #11042 from AdmiralCurtiss/global-state-file-monitor
...
HW: Convert FileMonitor::Log into a class.
2022-09-10 17:08:25 -04:00
Charles Lombardo
9fcc3e2e92
Android: Add custom window animation to alert dialogs
2022-09-10 17:01:24 -04:00
JosJuice
84507ec420
Merge pull request #10725 from t895/theme-merge
...
Android: App redesign with multi-theme system
2022-09-10 20:08:37 +02:00
Admiral H. Curtiss
b51d37fe49
HW: Convert FileMonitor::Log into a class.
2022-09-09 22:35:51 +02:00
JosJuice
2bbae05849
Merge pull request #11006 from t895/target33
...
Android: Update target SDK version
2022-09-09 21:07:17 +02:00
Admiral H. Curtiss
001fe8f94d
HW: Move AudioInterface variables to Core::System.
2022-09-09 04:13:43 +02:00
TryTwo
50db8f35b8
Debugger MemoryWidget: Create mini-menu at top of sidebar. Move dump buttons and "set value from file" to the menu.
2022-09-08 16:36:36 -07:00
Admiral H. Curtiss
426b5b1927
Merge pull request #10123 from sepalani/ai-cleanup
...
AudioInterface: Cleanup
2022-09-09 00:37:58 +02:00
Admiral H. Curtiss
200c9dd0c5
Merge pull request #11011 from Pokechu22/audio-mixer-assertions
...
Mixer: Add assertions regarding num_samples versus buffer length
2022-09-08 22:01:18 +02:00
Admiral H. Curtiss
d4fe54147e
Merge pull request #10757 from AdmiralCurtiss/show-memcard-path-in-gui
...
Qt: Show currently configured Memory Card path in the config window.
2022-09-08 21:12:21 +02:00
Pokechu22
72de74d4fc
Mixer: Add assertions regarding num_samples versus buffer length
2022-09-08 12:10:10 -07:00
Pokechu22
abb59a781a
Mixer: Use smaller array for PushWiimoteSpeakerSamples
2022-09-08 12:10:02 -07:00
Admiral H. Curtiss
329d279c05
Merge pull request #10751 from Zopolis4/manifesto
...
Update supportedOS values in .manifest files
2022-09-08 20:36:28 +02:00
Admiral H. Curtiss
85bd57df0e
Merge pull request #11007 from PEmu2/enj
...
Edit error message
2022-09-08 20:00:18 +02:00
Admiral H. Curtiss
696614fd1b
Merge pull request #11014 from AdmiralCurtiss/nand-repair-scrollable-box
...
Qt: Make custom dialog for NAND Repair.
2022-09-08 19:58:46 +02:00
Admiral H. Curtiss
45c4aa288a
Merge pull request #10881 from iwubcode/graphics-mod-draw-fb-texture-names
...
VideoCommon: fix graphics target texture names for efb/xfb
2022-09-08 19:56:49 +02:00
Admiral H. Curtiss
710210365a
Merge pull request #11038 from AdmiralCurtiss/steam-overlay-crash-fix-wgi
...
WGInput: Work around crash with Steam overlay.
2022-09-08 19:03:31 +02:00
Pokechu22
2dfe91336a
Merge pull request #10549 from Pokechu22/sw-tev-enum-map
...
Refactor various bits of graphics code for readability
2022-09-08 09:42:12 -07:00
Mai
74851fe94a
Merge pull request #11029 from AdmiralCurtiss/global-state-dvd
...
HW: Move DVD variables to Core::System.
2022-09-07 23:40:16 -04:00
Mai
348db11bdb
Merge pull request #11040 from AdmiralCurtiss/update-references-deadlock
...
InputCommon: Fix deadlock in EmulatedController::UpdateReferences().
2022-09-07 23:39:10 -04:00
Admiral H. Curtiss
b8ca1b2907
InputCommon: Fix deadlock in EmulatedController::UpdateReferences().
2022-09-07 22:37:24 +02:00
Admiral H. Curtiss
67c97a0bf2
WGInput: Work around crash with Steam overlay.
2022-09-07 21:06:26 +02:00
Admiral H. Curtiss
dbb0cfbc09
DSPLLE: Remove dead DSPSymbolDB.
2022-09-03 22:20:24 +02:00
Admiral H. Curtiss
2d45ce5c4e
HW: Move DVDInterface variables to Core::System.
2022-09-03 21:54:25 +02:00
Admiral H. Curtiss
c4d5804f60
HW: Move DVDThread variables to Core::System.
2022-09-03 21:54:25 +02:00
Sepalani
9b9f701ac5
AudioInterface: Add setters for AIS/AID sample rate
2022-09-03 23:36:34 +04:00
Sepalani
59eb1253a3
AudioInterface: Use anonymous namespace for static functions
2022-09-03 23:02:28 +04:00
Sepalani
f7a2972899
AudioInterface: Use IsPlaying method
2022-09-03 22:40:38 +04:00
dreamsyntax
78c6819f5e
Core: pause on panic handler option
2022-09-02 13:22:32 -07:00
Mai
23902f99ae
Merge pull request #11026 from AdmiralCurtiss/sound-stream
...
AudioCommon: Move sound stream variables to Core::System.
2022-09-01 23:41:42 -04:00
Charles Lombardo
c79b12a49b
Android: Replace Picasso with Glide
2022-09-01 19:11:02 -04:00
Mai
50550cf978
Merge pull request #11009 from shuffle2/device-notify
...
ciface/win32 and WGInput bug fixes
2022-09-01 00:27:55 -04:00
Mai
11281b5cef
Merge pull request #11017 from JosJuice/saf-custom-cover
...
Android: Fix reading custom covers with SAF
2022-09-01 00:27:28 -04:00
Charles Lombardo
940a38f172
Android: App redesign with multi-theme system
2022-08-31 18:01:15 -04:00
Admiral H. Curtiss
c310e504cb
AudioCommon: Move sound stream variables to Core::System.
2022-08-31 21:44:21 +02:00
Admiral H. Curtiss
9195e1a9b8
Merge pull request #11021 from merryhime/constructor-order
...
Ensure constructor initializer order matches initialization order
2022-08-30 02:29:37 +02:00
Merry
362167fde5
MTLObjectCache: Correct signature of equality operator
...
Not doing so produces a warning in clang:
ISO C++20 considers use of overloaded operator '!=' (with operand types
'Metal::DepthStencilSelector' and 'Metal::DepthStencilSelector') to be
ambiguous despite there being a unique best viable function with
non-reversed arguments
The underlying reason for this warning is an incorrect method signature.
2022-08-29 21:23:23 +01:00
Merry
b0717607b2
TextureInfo: Reorder members in constructor
...
m_stage is initialized last
2022-08-29 21:16:21 +01:00
Merry
3323375efb
GraphicsModManager: Reorder DecoratedAction members to initialization order
...
m_action_impl is initialized before m_mod in constructor
2022-08-29 21:15:49 +01:00
Pokechu22
698def66ff
Fifo analyzer: Fix various XF mistakes
...
* 'hangle' was a typo
* Light colors include an alpha value, so they should be 8 characters, not 6
* The XF command format adds 1 to the count internally (so 0 is one word), but we need to subtract that back to produce a valid command
* XFMEM_POSTMATRICES was calculating the row by subtracting XFMEM_POSMATRICES (POS vs POST), resulting in incorrect row numbering
2022-08-29 11:10:05 -07:00
Pokechu22
3fb09e3297
Fifo analyzer: Improve some BP descriptions
...
Mainly, the improvements are passing in the current command ID so that e.g. stage numbers can be directly included, instead of saying 0/1 or even/odd.
2022-08-29 11:10:05 -07:00
Pokechu22
546f9952a2
UberShaderPixel: Fix typo
2022-08-29 11:10:05 -07:00
Pokechu22
5ef8a7973e
BPMemory: Make TevKSel more clear
...
It stores both the konst selection value for alpha and color channels (for two tev stages per ksel), and half of a swap table row (there are 4 total swap tables, which can be used for swizzling the rasterized color and the texture color, and indices selecting which tables to use are stored per tev stage in the alpha combiner). Since these are indexed very differently, the old code was hard to follow.
2022-08-29 11:10:05 -07:00
Pokechu22
f21798b9b6
BPMemory: Use even/odd in TwoTevStageOrders instead of 0/1
2022-08-29 11:10:05 -07:00
Pokechu22
e43f02c752
BPMemory: Improve consistency of hex offset comments
...
I search for these somewhat often with control+f, but tend to default to adding a 0x prefix, which means I don't find them until I remove it.
2022-08-29 11:10:05 -07:00
Pokechu22
4206ac243b
SW/Rasterizer: Use RAS1_IREF::getTexCoord and getTexMap
2022-08-29 11:10:05 -07:00
Pokechu22
ae0fcd9a9f
SW/Tev: Replace Tev::SetRegColor with Tev::SetKonstColors
2022-08-29 11:10:05 -07:00
Pokechu22
3b9a048291
SW/Tev: Use std::clamp for Clamp255 and Clamp1024
2022-08-29 11:10:05 -07:00
Pokechu22
bae0f21f74
SW/Tev: Remove Tev::Init
2022-08-29 11:10:05 -07:00
Pokechu22
c9936f8c1c
SW/Tev: Use EnumMap for scale/bias tables
2022-08-29 11:10:05 -07:00
Pokechu22
b02992548e
SW/Tev: Use EnumMap for Reg
2022-08-29 11:10:03 -07:00
Pokechu22
2db7569463
SW/Tev: Use TevColorRef/TevAlphaRef instead of raw s16 pointers
2022-08-29 11:05:10 -07:00
JosJuice
40d6d615e2
Android: Fix reading custom covers with SAF
...
If GameFile.getCustomCoverPath returns a mangled URI, we need to
unmangle it before passing it to Picasso, since Picasso has no
concept of Dolphin's mangled URIs.
2022-08-29 18:48:20 +02:00
Pokechu22
ec1ed64832
EnumMap: Fix typo
2022-08-28 22:38:35 -07:00
JMC47
6d61e6a601
Merge pull request #11016 from Pokechu22/software-indirect-texture-bug
...
Software/Rasterizer: Fix indirect stage using texture coordinates/maps >= 4
2022-08-29 01:37:36 -04:00
Pokechu22
e04d23e086
SW/Rasterizer: Fix indirect stage using texture coordinates/maps >= 4
...
The masking was incorrect. This affects the main menu of The Last Avatar, though that menu also relies on copy filter functionality that is not correctly handled in the software renderer so the difference is not obvious; that game shuffles textures across all indices for some reason, so this issue would presumably result in subtle flickering.
2022-08-28 12:19:36 -07:00
Sepalani
7dc647fd4c
BBA/BuiltIn: Add UPnP HTTP listener
2022-08-28 23:09:09 +04:00
Admiral H. Curtiss
59f3be8c54
Qt: Make custom dialog for NAND Repair.
...
This is so that if you have a lot of titles that need repair the dialog can still fit on screen.
2022-08-28 03:11:17 +02:00
Shawn Hoffman
cd407abe34
WGInput: implement error handling
2022-08-27 02:11:27 -07:00
Shawn Hoffman
6bc8ab7001
WGInput: use c++/winrt
2022-08-26 23:20:34 -07:00
Shawn Hoffman
76d2e47444
ciface/win32: use CM_Register_Notification instead of wnd msgs
2022-08-26 21:59:56 -07:00
Sepalani
7202cf2650
BBA/BuiltIn: Add SSDP multicast support
2022-08-24 21:29:57 +04:00
Sepalani
f992f8f38c
BBA/BuiltIn: Make network interface consistent
2022-08-24 21:05:18 +04:00
Sepalani
e783a7f409
Common/Network: Add StrNetworkError helper function
2022-08-24 21:05:18 +04:00
JosJuice
b6ac63dc47
Merge pull request #11000 from t895/monochrome
...
Android: Use vector icon and enable monochrome icon
2022-08-24 17:38:59 +02:00
Admiral H. Curtiss
9c9962083d
Merge pull request #10956 from Dentomologist/address_cpp20_todo_comments
...
Address c++20 TODO comments
2022-08-24 17:18:56 +02:00
Admiral H. Curtiss
e5cfa286bd
Merge pull request #10960 from shuffle2/mz
...
ResourcePack: dont scan for individual files
2022-08-24 17:11:21 +02:00
Admiral H. Curtiss
a7d358a97b
Merge pull request #11003 from sepalani/decode-error
...
Move SocketManager's DecodeError to Common
2022-08-24 17:01:07 +02:00
OatmealDome
da0a89e6e6
msbuild: Add property for disabling auto updates
...
This will be used for our Steam builds.
2022-08-23 15:29:42 -04:00
OatmealDome
f2fad4df47
msbuild: Add property for creating Steam builds on Windows
2022-08-23 15:29:27 -04:00
Pokechu22
0cced44142
Use `__VA_OPT__(, ) __VA_ARGS__` instead of `##__VA_ARGS__`
...
Per https://en.cppreference.com/w/cpp/preprocessor/replace#.23_and_.23.23_operators the `##` behavior is a nonstandard extension; this extension seems to be supported by all compilers we care about, but IntelliSense in visual studio doesn't correctly handle it, resulting in false errors in the IDE (but not when compiling).
Per https://en.cppreference.com/w/cpp/preprocessor/replace#Function-like_macros C++20 introduced a workaround, where `__VA_OPT__(, )` generates a comma if and only if `__VA_ARGS__` is non-empty.
This PR replaces all occurrences, with the exception of Externals, DSPSpy (which is not likely to be edited in MSVC and does not target C++20 currently), and JitArm64_Integer.cpp (which uses `Function(__VA_ARGS__)`, and thus does not ever need a comma).
2022-08-23 12:09:57 -07:00
JosJuice
299aef945b
Merge pull request #11005 from t895/cover-only
...
Android: Add option to disable game cover text
2022-08-23 18:24:51 +02:00
Admiral H. Curtiss
aa8364a327
Merge pull request #10996 from JosJuice/gpu-texture-uint
...
VideoCommon: Fix OpenGL ES GPU texture decoding
2022-08-23 10:48:51 +02:00
PEmu2
b516ae12ca
Edit error message
...
Edit error message to be less sarcastic. I doubt many users appreciate this when Dolphin has just crashed.
2022-08-22 19:52:13 -07:00
Charles Lombardo
7659753924
Android: Update target SDK version
2022-08-22 19:14:43 -04:00
JMC47
48fdbcde23
Merge pull request #10809 from TryTwo/PR_CodeWidget_Filters
...
Debugger CodeWidget: Add filter boxes to callstack, function calls, a…
2022-08-22 15:47:20 -04:00
Charles Lombardo
2caa1f3b43
Android: Add option to disable game cover text
2022-08-22 13:50:39 -04:00
Admiral H. Curtiss
1845a13cbe
Merge pull request #10905 from shuffle2/netplay-hash
...
netplay: use sha1 instead of md5
2022-08-22 15:57:49 +02:00
Admiral H. Curtiss
8b7e6f1863
Merge pull request #10933 from shuffle2/vs
...
msbuild: fix overbuilding of externals and lessen rebuild likelyhood
2022-08-22 15:19:13 +02:00
Admiral H. Curtiss
aba87ba1e3
Merge pull request #10997 from JosJuice/nfs-check
...
DiscIO: Fix an incorrect error check in NFSBlob
2022-08-22 15:14:15 +02:00
Charles Lombardo
3814fab9ec
Android: Use vector icon and enable monochrome icon
2022-08-22 07:54:57 -04:00
Sepalani
597fb9ff6d
Move SocketManager's DecodeError to Common
...
Fix thread safety issue
2022-08-22 14:02:26 +04:00
Charles Lombardo
903c94f7be
Android: Update SDK and dependencies
2022-08-21 14:51:04 -04:00
JosJuice
052fdfa00d
DiscIO: Fix an incorrect error check in NFSBlob
2022-08-21 00:06:53 +02:00
Mai
fef8325ff7
Merge pull request #10995 from JosJuice/nfs-size-out
...
DiscIO: Fix calculation of NFS raw size
2022-08-20 17:57:46 -04:00
JosJuice
724bd3e597
VideoCommon: Fix OpenGL ES GPU texture decoding
2022-08-20 23:21:23 +02:00
JosJuice
aca624ef9c
DiscIO: Fix calculation of NFS raw size
2022-08-20 21:18:36 +02:00
Shawn Hoffman
7c3cdeda2b
qt: defer writing gamelist cache until EndRefresh
...
large speedup
2022-08-19 19:51:31 -07:00
TellowKrinkle
1bc133f3ae
CMake: Properly include lzma include directories
2022-08-18 21:06:57 -05:00
TellowKrinkle
048f6fac52
CMake: Properly include zstd include directories
2022-08-18 21:06:57 -05:00
JMC47
498c06b85a
Merge pull request #10989 from CasualPokePlayer/fifo_reset_dual_core
...
Fix crashes in dual core mode on a PI_FIFO_RESET
2022-08-18 17:32:29 -04:00
TellowKrinkle
588c4bd635
InputCommon:QuarzKB&M: Use view position instead of window position
2022-08-18 16:29:43 -05:00
TellowKrinkle
798b241832
InputCommon:QuarzKB&M: Use KVO to watch window position
...
CGWindowListCreateDescriptionFromArray would block for up to ~1ms, which isn't a great thing to do on the main emulation thread
2022-08-18 16:29:43 -05:00
CasualPokePlayer
ab8a8e6f84
Fix crashes in dual core mode on a PI_FIFO_RESET
2022-08-18 13:38:37 -07:00
Mai
fea552a4de
Merge pull request #10981 from JosJuice/android-string-single-choice-naming
...
Android: Clean up StringSingleChoiceSetting naming
2022-08-18 10:37:56 -04:00
Mai
39aa5f29a6
Merge pull request #10991 from Pokechu22/dsp-hle-ax-ucode-switch-state
...
DSPHLE/AX: Set state to WaitingForCmdListSize when switching uCodes
2022-08-18 10:34:57 -04:00
Mai
7a23b45aa1
Merge pull request #10992 from Pokechu22/swapchain-unused-functions
...
VideoCommon: Remove unused swap chain functions
2022-08-18 10:32:51 -04:00
Pokechu22
3c38f5c1d2
D3DCommon: Remove unused swap chain functions
...
These were added in ea15080d8f
(which added D3DCommon), but never were used.
2022-08-17 18:16:50 -07:00
Pokechu22
da7aded00d
Vulkan: Remove unused swap chain functions
...
These were added in 5e29508b8f
and 1f2d43c870
, but were replaced with CONFIG_CHANGE_BIT_VSYNC and CONFIG_CHANGE_BIT_STEREO_MODE in e4b205c769
.
2022-08-17 18:16:17 -07:00
Pokechu22
f9e1933111
DSPHLE/AX: Set state to WaitingForCmdListSize when switching uCodes
...
Fixes https://bugs.dolphin-emu.org/issues/13017 . With uCode switching, the existing instance of AXUCode is re-activated when GBAUCode is done, but if the state remains as WaitingForNextTask, it won't be able to do anything. Instead, it needs to be in WaitingForCmdListSize.
(When the AX uCode is resumed, startpc is set to 0x0030, at least for 0x07f88145; this is the same location as MAIL_RESUME jumps to, so DSP_RESUME should be sent when the resuming happens; that's already handled by AXUCode::Update.)
2022-08-17 12:05:53 -07:00
Shawn Hoffman
4ae475b6a1
fix verifying wii dev signatures
...
allows verifying dev-signed discs and wads
2022-08-16 12:47:26 -07:00
Admiral H. Curtiss
650f172637
DolphinQt: Only show raw memory card path if it's not the default.
2022-08-16 00:23:36 +02:00
Admiral H. Curtiss
d11839fd64
DolphinQt: Show raw memory card path and AGP cartridge path in config window.
2022-08-16 00:20:58 +02:00
Admiral H. Curtiss
43d4923e78
Config: Allow passing std::nullopt for the region in GetMemcardPath() to use the region as configured in the path itself. Falls back to the fallback region if no region is in the path.
2022-08-16 00:20:58 +02:00
JosJuice
b6a18b0da5
Merge pull request #10980 from JosJuice/android-no-dir-init-fail
...
Android: Force quit app if external storage isn't mounted
2022-08-14 15:47:50 +02:00
JosJuice
46cb106124
Android: Clean up StringSingleChoiceSetting naming
2022-08-14 15:42:06 +02:00
JosJuice
1646197902
Android: Force quit app if external storage isn't mounted
...
In the past, directory initialization could fail for two reasons:
The user was rejecting the storage permission, or external storage
wasn't mounted. With the introduction of scoped storage, the first of
these two couldn't happen anymore; if the user rejects the storage
permission, we just use the app-specific directory instead of the
dolphin-emu directory.
By making it so Dolphin force quits if external storage isn't mounted,
we can get rid of our code for handling retrying directory initialization
after it fails. I think this slight hit to UX is worth it considering
that basically nobody has an Android device with detachable primary
external storage anymore. And the UX hit is very small; the user just has
to manually open the app again after remounting external storage. The
toast about external storage not being mounted will still be displayed.
The recent merge of the splash screen PR may have made it so that the
code for handling directory initialization failing doesn't work anymore.
To be completely honest, I'm not sure how to even test this in 2022.
2022-08-13 18:59:23 +02:00
Admiral H. Curtiss
92c6407c45
Merge pull request #10970 from AdmiralCurtiss/directoryblob-encrypted
...
DirectoryBlob: Fix partition size mixup for encrypted Wii discs.
2022-08-12 22:35:40 +02:00
TellowKrinkle
b96bc4267e
InputCommon: Enable ARC for obj-c++
2022-08-12 02:09:53 -05:00
TellowKrinkle
235b67707f
Common:X64ABI: Work around clang-format being dumb
2022-08-11 23:57:28 -05:00
JosJuice
ce08de8cc6
Merge pull request #10948 from t895/splash
...
Android: Add Androidx splash screen to wait for directory initialization
2022-08-11 20:05:46 +02:00
Léo Lam
be33e1079d
Merge pull request #10972 from AdmiralCurtiss/ios-fs-metadata-nop
...
IOS/FS: Skip writing FST if SetMetadata() changes nothing.
2022-08-11 16:16:45 +01:00
TellowKrinkle
f2a074f4f8
Common:X64ABI: Make proper stack frames
2022-08-10 23:48:56 -05:00
Charles Lombardo
0c89e5ea8d
Add AndroidTV splash screen
2022-08-10 15:53:45 -04:00
Charles Lombardo
1dff1c3fe8
Android: Add Androidx splash screen to wait for directory initialization
2022-08-10 15:37:10 -04:00
Admiral H. Curtiss
7ac042d00b
DirectoryBlob: Fix partition size mixup for encrypted Wii discs.
2022-08-10 20:43:52 +02:00
JosJuice
3f794bf87e
Merge pull request #10974 from t895/permissions-fix
...
Android: Prevent app lockup when revoking write access
2022-08-10 20:27:30 +02:00
Charles Lombardo
a91e47899d
Android: Prevent app lockup when revoking write access
2022-08-10 13:57:30 -04:00
Pokechu22
1004e34167
Android: Don't set the signingConfig if keystore property isn't set
...
If the property isn't set, we don't initialize the release config, so we shouldn't use it. This fixes building issues for me.
2022-08-10 09:58:49 -07:00
Admiral H. Curtiss
0d39c4a78a
IOS/FS: Skip writing FST if SetMetadata() changes nothing.
2022-08-10 06:28:23 +02:00
Charles Lombardo
e926946f64
Consistent tv card colors
...
Item selected color is now dolphin-blue for all cards in the TV activity.
2022-08-10 00:23:19 -04:00
Admiral H. Curtiss
dcdba11ded
Merge pull request #10962 from askew-etc/inc-dec-select-state-hotkeys
...
Add hotkeys for incrementing/decrementing select state slot
2022-08-10 01:41:32 +02:00
Sage King
da803adf15
Work around for compiler bug on Debian and FreeBSD
2022-08-09 16:26:54 -06:00
Sage King
66276ac61b
Added type to SyncIndentifierComparison enum in SyncIdentifier.h in an
...
attempt to fix a failed call to operator<< in SendResponse()
2022-08-09 16:26:53 -06:00
Sage King
978b6a8724
Added comment explaining obscure folding syntax in NetPlayServer.cpp
2022-08-09 16:26:53 -06:00
Sage King
a12099404e
Added SendResponseToAllPlayers() and SendResponseToPlayer() to NetPlayServer.cpp and refactored OnConnect to use them
2022-08-09 16:26:52 -06:00
Sage King
477c20e28d
Updated comment explaining enet_peer_timeout's use in NetPlayClient.cpp and NetPlayServer.cpp; Corrected syntax related to PEER_TIMEOUT in NetplayClient.cpp
2022-08-09 16:26:52 -06:00
Sage King
2f367d7a9b
Updated PEER_TIMOUT in NetPlayCommon.h to use chrono literals; Updated NetPlayServer.cpp OnConnect() by putting commonly used code into named functions
2022-08-09 16:26:52 -06:00
Sage King
d81756e9b9
Refactored parameter to OnConnect() in NetPlayServer.cpp from rpac to received_packet
2022-08-09 16:26:51 -06:00
Sage King
9d14d95737
Removed code duplicating comments in NetPlayServer.cpp OnConnect()
2022-08-09 16:26:51 -06:00
Sage King
5dea8aaed0
Added initializer braces to Client player; in NetPlayServer.cpp OnConnect()
2022-08-09 16:26:50 -06:00
Sage King
d11df2b700
Refactored variable declared in NetPlayServer.cpp OnConnect() from npver to netplay_version
2022-08-09 16:26:50 -06:00
Mai
c2dd58c361
Merge pull request #10959 from JosJuice/frsp-subnormal
...
Interpreter: Fix rounding edge case in frsp
2022-08-09 18:17:21 -04:00
Mai
e9e2c741a2
Merge pull request #10953 from JosJuice/aarch64-add-encoding
...
Arm64Emitter: Fix encoding of size for ADD (vector)
2022-08-09 18:13:50 -04:00
Zopolis4
e54818e60d
Resolve "implicit capture of ‘this’ via ‘[=]’ is deprecated in C++20" warning
2022-08-08 11:25:19 +10:00
Zopolis4
e2aefe13a6
Restrict OpenSLES to Android via CMake
2022-08-08 09:18:36 +10:00
Scott Mansell
4c2d707538
Merge pull request #10940 from InvoxiPlayGames/ipc-discord
...
Add Discord presence ioctlv to /dev/dolphin
2022-08-08 08:11:42 +12:00
askew-etc
914f38753a
Add hotkeys for incrementing/decrementing selected state slot (like RetroArch)
2022-08-07 12:20:09 -05:00
Shawn Hoffman
6e94c20abd
add TODO for chrono in GetLocalTimeSinceJan1970
2022-08-06 22:25:30 -07:00
Shawn Hoffman
292724b228
Revert "msvc: use std::chrono for GetLocalTimeSinceJan1970"
...
This reverts commit 86da6c98fb
.
2022-08-06 22:22:14 -07:00
Shawn Hoffman
9bb8315441
ResourcePack: dont scan for individual files
...
walking the zip prevents minizip from re-reading the same
data repeatedly from the actual backing filesystem.
also improves most usages of minizip to allow for >4GB,
files altho we probably don't need it
2022-08-06 15:38:46 -07:00
iwubcode
637dca680c
VideoCommon: update ubershader pixel to not enforce d3d when writing color output that has been defined as uints
2022-08-06 16:08:58 -05:00
iwubcode
05135b4f43
VideoCommon: fix uint shader compiler error in specialized shaders. This error is in renderers that use uint for their color output (for logic ops). Remove D3D check for uint output since other backends could use uint output as well.
2022-08-06 16:08:58 -05:00
Dentomologist
02cd4ecf7d
Core: Use std::chrono time_since_epoch
2022-08-06 13:28:28 -07:00
Dentomologist
ff26f6435e
Use structured binding for pair values
...
dir_path is used by PanicAlertFormatT, which prior to PR 10209 used a
lambda. Before c++20, referring to structured bindings in lambda captures
was forbidden. The problem is now doubly fixed, so put the structured
binding back in.
2022-08-06 13:28:28 -07:00
iwubcode
0b5f7d2c5f
VideoCommon: fix graphics target not properly setting 'draw_started' texture names for efb/xfb
2022-08-06 12:01:33 -05:00
JosJuice
c5d9514cd9
Interpreter: Fix rounding edge case in frsp
...
Fixes the Dolphin bug mentioned in
https://github.com/dolphin-emu/hwtests/issues/45 .
Because this doesn't fix any observed behavior in games (no, 1080°
Avalanche isn't affected), I haven't implemented this in the JITs,
so as to not cause unnecessary performance degradations.
2022-08-06 18:54:19 +02:00
InvoxiPlayGames
f9e39cf200
Add Discord presence ioctlv to /dev/dolphin
2022-08-06 07:32:29 +01:00
Shawn Hoffman
3ca673a675
WiiSave: protect against a stack buffer overflow
2022-08-05 17:24:03 -07:00
Tilka
3595c8b295
Merge pull request #10952 from JosJuice/bitutils-remove-unused
...
Common: Remove unused stuff from BitUtils.h
2022-08-05 21:08:02 +01:00
JosJuice
52661dcc76
Arm64Emitter: Fix encoding of size for ADD (vector)
...
This was causing a bug in the rounding of paired single multiplication
operands. If Force25BitPrecision was called for quad registers, the
element size of its ADD instruction would get treated as if it was 16
instead of the intended 64, which would cause the result of the
calculation to be incorrect if the carry had to pass a 16-bit boundary.
Fixes one of the two bugs reported in
https://bugs.dolphin-emu.org/issues/12998 .
2022-08-05 21:49:28 +02:00
JosJuice
c00008e3cd
Common: Remove unused stuff from BitUtils.h
2022-08-05 17:54:51 +02:00
Tillmann Karras
b8e64b1f43
AX: fix comments and variable names (NFC)
...
This command does not upload the MAIN buffers to CPU memory. This was
functionally fixed in f11a40f858
without
updating the comments and variable names.
2022-08-05 15:00:17 +01:00
Scott Mansell
ebf95370ef
Merge pull request #10946 from Pokechu22/remove-iLog
...
VideoCommon: Remove old iLog field
2022-08-05 22:42:09 +12:00
JosJuice
939fa1ed1c
Merge pull request #10941 from shuffle2/crypto-cleanup
...
Crypto cleanup
2022-08-05 12:12:34 +02:00
Zopolis4
b9b7ff6e25
Update supportedOS values in .manifest files
2022-08-05 10:26:22 +10:00
Tilka
e638bb658f
Merge pull request #10945 from Pokechu22/vulkan-source-file-name
...
Vulkan: Call setSourceFile in addition to addSourceText
2022-08-05 00:03:25 +01:00
Pokechu22
354530cf61
VideoCommon: Remove old iLog field
...
Prior to 7854bd7109
, this was used by the debugger for the OpenGL and D3D9 plugins to control logging (via PRIM_LOG and INFO_LOG/DEBUG_LOG in VideoCommon code; PRIM_LOG was changed in 77215fd27c
), and also framedumping (removed in 64927a2f81
and 2d8515c0cf
), shader dumping (removed in 2d8515c0cf
and this commit), and texture dumping (removed in 54aeec7a8f
). Apart from shader dumping, all of these features have modern alternatives, and shader source code can be seen in RenderDoc if "Enable API Validation Layers" is checked (which also enables source attachment), so there's no point in keeping this around.
2022-08-04 15:49:39 -07:00
Pokechu22
20a2a2174d
Vulkan: Call setSourceFile in addition to addSourceText
2022-08-04 15:09:12 -07:00
Admiral H. Curtiss
5508c52a95
Merge pull request #10932 from JosJuice/nfs
...
DiscIO: Add support for the NFS format
2022-08-04 22:20:08 +02:00
JosJuice
6fc3bbbdd9
DiscIO/VolumeVerifier: Add a note about NFS bad dumps
2022-08-04 22:01:00 +02:00
JosJuice
02e3125f23
DiscIO/VolumeVerifier: Small logic cleanup
...
Just for ease of reading. No behavioral difference.
2022-08-04 22:00:59 +02:00
JosJuice
40a4eb3893
DiscIO: Adjust GetDataSizeType logic for NFS
2022-08-04 22:00:59 +02:00
JosJuice
a87dffe52d
DiscIO: Replace IsDataSizeAccurate with GetDataSizeType
...
Previously, we had WBFS and CISO which both returned an upper bound
of the size, and other formats which returned an accurate size. But
now we also have NFS, which returns a lower bound of the size. To
allow VolumeVerifier to make better informed decisions for NFS, let's
use an enum instead of a bool for the type of data size a blob has.
2022-08-04 22:00:59 +02:00
JosJuice
3a6df63e9b
DiscIO: Add support for the NFS format
...
For a few years now, I've been thinking it would be nice to make Dolphin
support reading Wii games in the format they come in when you download
them from the Wii U eShop. The Wii U eShop has some good deals on Wii
games (Metroid Prime Trilogy especially is rather expensive if you try
to buy it physically!), and it's the only place right now where you can
buy Wii games digitally.
Of course, Nintendo being Nintendo, next year they're going to shut down
this only place where you can buy Wii games digitally. I kind of wish I
had implemented this feature earlier so that people would've had ample
time to buy the games they want, but... better late than never, right?
I used MIT-licensed code from the NOD library as a reference when
implementing this. None of the code has been directly copied, but
you may notice that the names of the struct members are very similar.
c1635245b8/lib/DiscIONFS.cpp
2022-08-04 22:00:58 +02:00
JosJuice
bb27d4cc95
DiscIO/VolumeWii: Decouple "is encrypted" from "is hashed"
...
Needed for the next commit. NFS disc images are hashed but not encrypted.
While we're at it, also get rid of SupportsIntegrityCheck.
It does the same thing as old IsEncryptedAndHashed and new HasWiiHashes.
2022-08-04 20:29:22 +02:00
Pokechu22
8129874d11
Sanitize and use increased precision when normalizing light directions
...
This normalization was added in 02ac5e95c8
, and changed to use floats in 4bf031c064
. The conversion to floats means that sometimes there is insufficient precision for the normalization process, which results in values of NaN or infinity. Performing the whole process with doubles prevents that, but games also sometimes set the values to NaN or infinity directly (possibly accidentally due to the values not being initialized due to them not being used in the current configuration?).
The version of Mesa currently in use on FifoCI (20.3.5) has issues with NaN. Although this bug has been fixed (b3f3287eac
in 21.2.0), FifoCI is stuck with the older version.
This change may or may not be incorrect, but it should result in the same behavior as already present in Dolphin, while working around the Mesa bug.
2022-08-04 08:52:44 -07:00
Mai
f59f1a2a35
Merge pull request #10740 from Tilka/cxx20
...
Move to C++20 for non-MSVC compilers
2022-08-04 09:31:31 -04:00
Tilka
3ad6e3abc2
Merge pull request #10768 from Pokechu22/dsp-hle-gba-class
...
DSPHLE: Eliminate global state in GBA and AX uCode + accuracy improvements
2022-08-04 13:50:30 +01:00
Tilka
8105d0034d
Merge pull request #10821 from Pokechu22/dimar-masking
...
DVDInterface: Mask upper bits of DIMAR in GC mode
2022-08-04 12:50:49 +01:00
Pokechu22
bf70026728
DSPHLE: Require implementing DoState
...
CARDUCode, GBAUCode, and INITUCode previously didn't have an implementation of it. In practice it's unlikely that this caused an issue, since these uCodes are only active for a few frames at most, but now that GBAUCode doesn't have global state, we can implement it there. I also implemented it for CARDUCode, although our CARDUCode implementation does not have all states handled yet - this is simply future-proofing so that when the card uCode is properly implemented, the save state version does not need to be bumped. INITUCode does not have any state to save, though.
2022-08-03 17:32:12 -07:00
Pokechu22
f2e833b5c4
DSPHLE: Eliminate global state in AX uCode
...
This also increases accuracy as to when specific mail is allowed, and correctly handles masking of the 0xCDD1 mails.
2022-08-03 17:32:12 -07:00
Pokechu22
8d66c29f33
DSPHLE: Eliminate global state in GBA uCode + accuracy improvements
...
The accuracy improvements are:
* The request mail must be 0xabba0000 exactly; both the low and high parts are checked
* The address is masked with 0x0fffffff
* Before, the global state meant that after the GBA uCode had been used once, it would accept 0xcdd1 commands immediately. Now, it only accepts them after execution has finished.
2022-08-03 17:32:12 -07:00
Pokechu22
8b65e84121
DSPHLE: Make all uCode implementations final classes
...
(Apart from AXUCode, which is inherited by AXWiiUCode.)
2022-08-03 17:32:12 -07:00
Mai
b02653722d
Merge pull request #10856 from JosJuice/android-tv-user-data-2
...
Android: Add divider to landscape version of User Data activity
2022-08-03 20:24:54 -04:00
Mai
4617ee7d89
Merge pull request #10787 from JosJuice/channel-uri
...
Android: Add app link intent URI to channels projection
2022-08-03 20:21:45 -04:00
Mai
098fc8cadc
Merge pull request #10790 from JosJuice/android-wii-controller-magic
...
Android: Refactor reading "wiiController" preference
2022-08-03 20:21:11 -04:00
Mai
27669fc7c8
Merge pull request #10828 from JosJuice/jitarm64-32-bit-exception
...
JitArm64: Pass 32-bit temp GPR to WriteConditionalExceptionExit
2022-08-03 14:36:19 -04:00
Mai
a8b2174ce6
Merge pull request #10872 from shuffle2/timer
...
Timer improvements
2022-08-03 14:30:29 -04:00
Mai
173337104f
Merge pull request #10919 from JosJuice/android-wait-on-fab-click
...
Android: Use AfterDirectoryInitializationRunner on FAB press
2022-08-03 14:22:42 -04:00
Mai
385764ebe0
Merge pull request #10913 from shuffle2/vsnext
...
msvc: fix issues with vs 17.3
2022-08-03 14:21:53 -04:00
Mai
ebb8402a24
Merge pull request #10934 from sepalani/bba-igmp
...
BBA/BuiltIn: Add minimal IGMP support
2022-08-03 14:17:41 -04:00
Mai
f93b04dc94
Merge pull request #10935 from Pokechu22/icache-dont-save-lookup-table
...
PPCCache: Stop storing lookup table in savestates
2022-08-03 14:14:39 -04:00
Minty-Meeo
347dd03c3f
Remove Vestigial Preprocessor Block in Jit64/Jit.cpp
...
"Common/GekkoDisassembler.h" became used by Release builds with commit 77e9aa48bc
, but this got left in by mistake.
2022-08-03 12:30:20 -05:00
Shawn Hoffman
bf5076eb01
crypto/sha1: add real workaround for msvc/arm64 bad codegen
2022-08-02 23:05:45 -07:00
Shawn Hoffman
78142e30cc
crypto/sha1: simplify enablement of sha insns on non-msvc
2022-08-02 23:05:07 -07:00
Shawn Hoffman
4e6aa28da4
crypto/aes: silence warning on godforsaken android gcc
2022-08-02 23:03:51 -07:00
Shawn Hoffman
403f3693da
NetPlay: use sha1 instead of md5
2022-08-02 22:25:05 -07:00
Shawn Hoffman
c7ce035a7f
NetPlay: rename md5 -> game digest
2022-08-02 22:25:05 -07:00
Shawn Hoffman
ec9b30681b
msvc: silence warning in qt header
2022-08-02 22:24:33 -07:00
Shawn Hoffman
bdf3a03c04
DolphinQt: fix BootSessionData dtor not being called
...
std::unique_ptr can't/won't call deleter on incomplete type
generated warning on vs 17.3.0 preview 5.0
2022-08-02 22:24:33 -07:00
Shawn Hoffman
683f7f7210
msbuild: tidy up the linked libs
2022-08-02 22:24:22 -07:00
Shawn Hoffman
c5da2877cc
msbuild: refactor to reduce rebuild events
...
* moves dolphin-specific settings out of Base.props
* creates exports.props for externals, allowing to easily import
individual Externals
* corrects some cruft that accumulated and probably contributed
to msbuild overbuilding
2022-08-02 22:24:22 -07:00
Shawn Hoffman
fec61f89a3
Timer: protect usages of ms timers from rollover
2022-08-02 22:24:06 -07:00
Shawn Hoffman
0fe99e9bc8
ThrottleCallback: correct units in log
...
make first invocation a bit more correct
2022-08-02 22:24:06 -07:00
Shawn Hoffman
86da6c98fb
msvc: use std::chrono for GetLocalTimeSinceJan1970
2022-08-02 22:24:06 -07:00
Shawn Hoffman
b473c35873
windows: mark as HighQoS, ensure timer resolution is honored
2022-08-02 22:24:06 -07:00
Shawn Hoffman
3384b1385e
move "double time" code into State from Timer
...
Ideally the statesave format could be changed
to just store a u64 in the future
2022-08-02 22:24:06 -07:00
Shawn Hoffman
49218f9695
DolphinDevice: expose elapsed ms in GetSystemTime
2022-08-02 22:24:06 -07:00
Shawn Hoffman
09089eeee0
Common::Timer: use chrono::steady_clock internally
2022-08-02 22:24:06 -07:00
Shawn Hoffman
8d16971a6f
LogManager: use own timestamp function
2022-08-02 22:24:05 -07:00
Shawn Hoffman
d71797154a
VolumeVerifier: enable fast hash functions by default
...
sets defaults based on cpu support.
2022-08-02 22:23:49 -07:00
Tilka
7d2d5d914b
Merge pull request #10903 from shuffle2/hash-reorg
...
Common/Hash: use zlib-ng for adler32. small cleanups.
2022-08-02 18:29:04 +01:00
Tilka
e62ceab349
Merge pull request #10902 from shuffle2/aes
...
Implement hw accelerated AES
2022-08-02 18:28:47 +01:00
Pokechu22
134397754e
PPCCache: Stop storing lookup table in savestates
...
These lookup tables total 4 megabytes, and contain data that's entirely redundant to the actual cache state (as part of an optimization, though I'm not sure whether the optimization actually is useful). This change instead recomputes these lookup tables when loading the state (which involves filling the lookup table with a marker (0xff), and then setting the 128 * 8 valid entries (1 kilobyte)).
2022-08-01 16:36:59 -07:00
Shawn Hoffman
17c554c165
Common/Hash: use zlib-ng for adler32. small cleanups.
2022-08-01 10:07:27 -07:00
Shawn Hoffman
46ad8b9d68
Implement hw accelerated AES
2022-08-01 10:00:42 -07:00
Sepalani
4fa65ec9cf
BBA/BuiltIn: Add minimal IGMP support
2022-08-01 12:49:38 +04:00
Sepalani
bfc2d11891
BBA/BuiltIn: Simplify HandleARP
2022-08-01 12:48:33 +04:00
Sepalani
7e9711d738
BBA/BuiltIn: Rename m_fake_mac to m_router_mac
2022-08-01 12:48:32 +04:00
Sepalani
b029b468cd
BBA/BuiltIn: Fix MAC address issues with TCP and UDP
2022-08-01 12:48:32 +04:00
Sepalani
cc7cfe249e
BBA/BuiltIn: Move TryGetDataFromSocket
2022-08-01 12:48:32 +04:00
Sepalani
0f5fe2274a
BBA/BuiltIn: Save current MAC address
2022-08-01 12:48:32 +04:00
Sepalani
ec60416c00
BBA/BuiltIn: Add an ARP table
2022-08-01 12:48:32 +04:00
Tilka
fb45ed3981
Merge pull request #10883 from Pokechu22/pi-fifo-reset-gp-fifo
...
ProcessorInterface: Reset both GPFifo and Fifo on PI_FIFO_RESET
2022-07-31 17:06:37 +02:00
Tilka
2c754db3ab
Merge pull request #10912 from shuffle2/msbuild-arch
...
msbuild: set PreferredToolArchitecture based on host OS arch
2022-07-31 16:33:29 +02:00
Tilka
45f8ae6d51
Merge pull request #10926 from shuffle2/old-gcc-warning
...
SHA1/arm64: fix casting warning on certain gcc
2022-07-31 16:31:35 +02:00
Tillmann Karras
d033d92b05
Move to C++20 for non-MSVC compilers
2022-07-30 23:35:53 +01:00
Admiral H. Curtiss
92c7566646
Merge pull request #10924 from Pokechu22/symbols-missing-last-function
...
PPCSymbolDB: Fix getting symbol for the last function
2022-07-30 21:52:10 +02:00
Shawn Hoffman
97ff757a74
SHA1/arm64: fix casting warning on certain gcc
2022-07-30 12:06:21 -07:00
Shawn Hoffman
e85da16947
msbuild: set PreferredToolArchitecture based on host OS arch
2022-07-30 11:01:47 -07:00
JosJuice
ecc4bc5098
Merge pull request #10925 from AdmiralCurtiss/ppc-state-hle-print
...
HLE_OS: Don't modify emulated state in printf hooks.
2022-07-30 19:49:18 +02:00
Admiral H. Curtiss
2a56113a5b
Merge pull request #10898 from Pokechu22/dsp-hle-homebrew-padding
...
DSPHLE: Support padded versions of libasnd and libaesnd uCodes
2022-07-30 14:21:28 +02:00
Admiral H. Curtiss
a9d9f5c0da
Merge pull request #10899 from shuffle2/sha1
...
add hw-accelerated SHA1
2022-07-30 14:11:37 +02:00
Admiral H. Curtiss
b364a301dc
HLE_OS: Don't modify emulated state in printf hooks, since the actual PPC function will be called afterwards.
2022-07-30 14:06:28 +02:00
Admiral H. Curtiss
4b6ad977c6
Merge pull request #10922 from Pokechu22/apploader-hle-no-replace
...
Boot_BS2Emu: Create an actual function for AppLoaderReport
2022-07-30 14:05:58 +02:00
Pokechu22
1f17a3bb1e
PPCSymbolDB: Fix getting symbol for the last function
2022-07-29 18:41:11 -07:00
Pokechu22
e97ad90681
Boot/ElfReader: Log to BOOT log instead of MASTER log
2022-07-29 12:18:05 -07:00
Pokechu22
7a7a3a7f41
Boot_BS2EMU: Log apploader-related messages to BOOT log instead of MASTER log
2022-07-29 12:17:09 -07:00
Pokechu22
d3d7cc6f96
Boot_BS2Emu: Create an actual function for AppLoaderReport
...
Before, we used a replace hook and didn't write anything there. Now, we write a BLR instruction to immediately return, and then use a start hook. This makes the behavior a bit clearer (though it shoudln't matter in practice).
2022-07-29 12:16:20 -07:00
Sepalani
18b8f147ab
BBA/BuiltIn: Ensure UDP ports are open
2022-07-29 21:25:17 +04:00
JMC47
a81f3a95db
Merge pull request #10917 from sepalani/bba-ntohs
...
BBA/BuiltIn: Fix network byte order issues
2022-07-29 13:19:25 -04:00
JosJuice
bab327eafa
Android: Use AfterDirectoryInitializationRunner on FAB press
...
Without this, if the user finishes selecting a directory before
directory initialization finishes, MainPresenter.onDirectorySelected
will segfault when trying to read the MAIN_RECURSIVE_ISO_PATHS setting.
An alternative would be to use AfterDirectoryInitializationRunner
after the user selects the directory instead of before, but it might
be confusing for the user to deal with the usage statistics prompt
when they were expecting to add a folder.
2022-07-29 16:20:34 +02:00
JMC47
ae4fa53a9c
Merge pull request #10914 from JMC47/bbarename
...
BBA - Rename Built In BBA to BBA (HLE)
2022-07-29 10:16:51 -04:00
JMC47
205d78d780
BBA - Rename BBA Built In to BBA (HLE)
...
All of our BBA options are technically built in, so it made the BBA
Built In option kind of confusing as to what it did. So rename it to
BBA HLE to make it more clear what it is doing and why it doesn't need a
TAP.
2022-07-29 10:06:44 -04:00
Sepalani
2de4d52021
BBA/BuiltIn: Fix network byte order issues
2022-07-29 11:33:36 +04:00
JMC47
3bf1ddc549
Merge pull request #10730 from AdmiralCurtiss/riivolution-sysfile-patches
...
Riivolution: Add custom extension to patch boot.bin, bi2.bin, and apploader.img.
2022-07-28 20:29:31 -04:00
Admiral H. Curtiss
000c9c7545
Merge pull request #10907 from shuffle2/pngend
...
SavePNG: make sure to finalize image file
2022-07-28 19:28:00 +02:00
Shawn Hoffman
25462f4a3c
SavePNG: make sure to finalize image file
2022-07-28 10:12:36 -07:00
Mai
e10d66270f
Merge pull request #10909 from JosJuice/volume-verifier-read-succeeded
...
VolumeVerifier: Fix read_succeeded condition
2022-07-28 12:05:03 -04:00
JosJuice
14c1a1c658
VolumeVerifier: Fix read_succeeded condition
...
We shouldn't set m_read_errors_occurred to true just because
is_data_needed was false.
2022-07-28 09:57:17 +02:00
Scott Mansell
1ea0c7752e
Merge pull request #10897 from Hibyehello/LogManager-Fix
...
LogManager: Dynamically get last log type
2022-07-28 11:54:22 +12:00
Shawn Hoffman
f8b9034a28
Crypto/SHA1: add unittests
2022-07-27 01:07:48 -07:00
Shawn Hoffman
8939210d8a
Common/Crypto/SHA1: implement accelerated versions
2022-07-27 01:07:48 -07:00
Shawn Hoffman
bfa2a66c98
WIABlob: remove outdated mbedtls workaround
2022-07-26 22:16:37 -07:00
Shawn Hoffman
dd29a54cf6
introduce wrapper for SHA1 functionality
2022-07-26 22:16:37 -07:00
Pokechu22
cc02471da2
DSPHLE: Support padded versions of the libaesnd uCode
...
This is used by libogc2 and libogc-rice.
2022-07-26 19:06:05 -07:00
Pokechu22
33b63a62d1
DSPHLE: Support padded version of libasnd uCode
...
This is used by libogc2 and libogc-rice.
2022-07-26 18:44:08 -07:00
Josh
7e75bcd36f
Use Dynamic last Log Type
2022-07-27 00:07:53 +02:00
Pokechu22
7a03b1fe16
UnitTests: Fix warnings from HermesText
...
Most of these correspond to changes made in devkitPro/libogc@b1b8ecab3a .
The numeric vlaues of ACC0 and ACC1 in Dolphin are different (see b06d38389b
, though I'm not sure when this difference first appeared). Technically it's not even necessary to list the registers at the start like this anymore, but old programs do it, so it seems useful to have a test that covers it.
The binary itself does not need to be changed; the warnings were simply stating that "although you wrote $ACL0, the generated binary instead is using $ACC0" or similar; by changing the code to use $ACC0 directly the warnings are resolved.
2022-07-26 11:52:31 -07:00
JosJuice
97100290ee
Merge pull request #10885 from JosJuice/android-graphics-mods
...
Android: Add graphics mods support to GUI
2022-07-26 15:44:01 +02:00
Admiral H. Curtiss
a9edf129e3
Merge pull request #10889 from shuffle2/spng
...
replace libpng with libspng
2022-07-26 12:53:04 +02:00
Admiral H. Curtiss
6b419c7ca3
Merge pull request #10876 from shuffle2/cpudetect
...
CPUDetect: improve win/arm64 support
2022-07-26 12:52:50 +02:00
Admiral H. Curtiss
9d15a1c5a1
Merge pull request #10858 from AdmiralCurtiss/mouse-center-hotkey
...
Add hotkey for centering mouse in render window.
2022-07-26 12:52:33 +02:00
Admiral H. Curtiss
c7752f80e4
Merge pull request #10892 from Pokechu22/dsp-hle-aesnd-more-versions
...
DSPHLE: Support EDuke32 Wii libaesnd uCode
2022-07-26 11:36:18 +02:00
CasualPokePlayer
bd27e18d51
Fix ARAM Expansion Writes
...
Looks like the memcpy here had its args in the wrong order.
2022-07-26 02:01:25 -07:00
Shawn Hoffman
76b4318b88
CPUDetect: improve win/arm64 support
...
read brand_string on macos/arm64
remove unused flags
report family/model info instead of vendor name
2022-07-25 21:21:11 -07:00
Pokechu22
1dcccb1f75
DSPHLE: Add warning to use of MAIL_TERMINATE
2022-07-25 20:35:43 -07:00
Pokechu22
e44b596f50
DSPHLE: Fix typos in libaesnd logging
2022-07-25 20:35:43 -07:00
Pokechu22
58d344e189
DSPHLE: Support EDuke32 Wii libaesnd uCode
...
This version is exclusive to EDuke32 Wii (see https://bugs.dolphin-emu.org/issues/12990 ).
2022-07-25 20:35:41 -07:00
Pokechu22
a6d08571bd
DSPHLE: Move aesnd uCode hash constants into header
2022-07-25 20:32:02 -07:00
Pokechu22
4b179e01da
DSPHLE: Move asnd uCode hash constants into header
2022-07-25 20:31:04 -07:00
Shawn Hoffman
f92541fbd9
StripSpaces: only strip spaces
...
StripWhitespace maintains old behavior
2022-07-25 18:40:12 -07:00
Shawn Hoffman
acb10f0006
replace libpng with libspng
2022-07-25 18:32:16 -07:00
Admiral H. Curtiss
e4ff49769c
Merge pull request #10888 from shuffle2/zlib-ng
...
replace zlib with zlib-ng
2022-07-26 02:25:17 +02:00
JMC47
bfd03cd1a4
Merge pull request #10793 from Pokechu22/dsp-hle-aesnd
...
DSPHLE: Add HLE version of libaesnd ucode
2022-07-25 05:12:53 -04:00
JosJuice
86bb290cc5
Merge pull request #10886 from OatmealDome/metal-minor-fixes
...
Metal: Prevent usage of macOS-only APIs on non-macOS platforms
2022-07-25 08:31:18 +02:00
Admiral H. Curtiss
d14bd10cd7
Quartz: Handle mouse centering hotkey.
...
Co-authored-by: Dentomologist <dentomologist@gmail.com>
2022-07-25 01:26:57 +02:00
Admiral H. Curtiss
e0870166ef
XInput2: Handle mouse centering hotkey.
2022-07-25 01:26:56 +02:00
Admiral H. Curtiss
d57d04bb04
DInput: Handle mouse centering hotkey.
2022-07-25 01:26:56 +02:00
Admiral H. Curtiss
4d27022d0e
Add hotkey for centering mouse in render window.
2022-07-25 00:59:47 +02:00
Shawn Hoffman
b2f8456710
msbuild: set C standard to C17
...
not required but it seems nice
2022-07-24 14:33:37 -07:00
Shawn Hoffman
c3b64012d1
replace zlib with zlib-ng
...
since the benefits are so high, don't link with shared zlib
2022-07-24 14:33:37 -07:00
OatmealDome
700162b8bd
MTLUtil: Include TargetConditionals
2022-07-23 17:22:11 -04:00
OatmealDome
77f44f1600
MTLMain: Include TargetConditionals
2022-07-23 17:22:11 -04:00
OatmealDome
b32b27ae9a
MTLMain: Only compile NSView manipulation code on macOS
2022-07-23 17:22:04 -04:00
JosJuice
e5a177ece9
Merge pull request #10868 from tellowkrinkle/UsesDSBFix
...
VideoCommon: Fix IsDualSrc check for dst blend factors
2022-07-23 22:14:07 +02:00
JosJuice
3bd2bca385
Android: Add warning if graphics mods are not enabled
2022-07-23 21:58:45 +02:00
JosJuice
8f410bff15
Android: Add graphics mods support to CheatsActivity
2022-07-23 21:58:45 +02:00
OatmealDome
8ad7fa0313
MTLUtil: Return invalid for non-supported texture formats on non-macOS platforms
2022-07-23 13:53:31 -04:00
OatmealDome
7edd3aff75
MTLUtil: Don't attempt to get all GPUs on non-macOS platforms
2022-07-23 13:53:22 -04:00
OatmealDome
50d3ad58df
CMakeLists: Link videometal with Foundation
2022-07-23 13:53:15 -04:00
Pokechu22
6a7aa8f2c6
Convert CP/XF matrix indices mismatch panic alert to a warning
...
https://bugs.dolphin-emu.org/issues/12977 indicates that this happens on startup of Spider-Man 2, even in single-core. I don't have the game, so I can't directly determine why this is happening, but presumably real hardware does not hang in this case, so we can make it less obtrusive.
2022-07-23 09:01:22 -07:00
JosJuice
45f6d36c45
Android: Split AbstractCheat into ReadOnlyCheat and AbstractCheat
...
ReadOnlyCheat will be used by graphics mods.
2022-07-23 17:21:52 +02:00
JosJuice
41a26f76fa
Android: Add Cheat.supportsCode method
...
Patches, AR codes and Gecko codes have an associated code that the GUI
can show, but graphics mods don't.
2022-07-23 17:21:46 +02:00
JosJuice
98e2817802
Android: Add setting for enabling graphics mods
2022-07-23 17:21:45 +02:00
JMC47
3d7b66bcfc
Merge pull request #10861 from JosJuice/android-new-sd
...
Android: Bring SD card settings up to date with DolphinQt
2022-07-23 07:59:19 -04:00
JosJuice
a20d0e31d6
Android: Bring SD card settings up to date with DolphinQt
2022-07-23 13:28:34 +02:00
JosJuice
c0cf6f04dd
Android: Add "Broadband Adapter (Built In)" to settings
...
This makes the feature added in 01ada3850f
available in the Android GUI.
2022-07-23 11:33:03 +02:00
JMC47
89c4fdeeea
Merge pull request #10754 from tellowkrinkle/Metal
...
VideoBackends: Add Metal backend
2022-07-23 01:57:35 -04:00
Pokechu22
5bbdf7ae15
ProcessorInterface: Reset both GPFifo and Fifo on PI_FIFO_RESET
...
Fixes https://bugs.dolphin-emu.org/issues/12981
2022-07-22 22:22:34 -07:00
Pokechu22
97412553f9
Add a more detailed comment about SPR_WPAR's BNE bit
2022-07-22 22:22:34 -07:00
Pokechu22
c06f203e98
MMU: Clarify masking on gather pipe address
2022-07-22 22:22:34 -07:00
Pokechu22
1c833ddc3c
Create constant for GPFifo physical address
2022-07-22 22:22:33 -07:00
Pokechu22
b76f4dd5f8
ProcessorInterface: Remove unused fields
2022-07-22 22:20:26 -07:00
TellowKrinkle
6559c6b8ee
VideoBackends:Multiple: Grammar fixes
2022-07-21 20:44:19 -05:00
TellowKrinkle
a41345127f
VideoBackends:Metal: Remove unified memory config
...
Not worth the extra code
2022-07-21 20:44:19 -05:00
TellowKrinkle
5065767abd
VideoBackends:Metal: Avoid submitting draw calls with no vertices/indices
2022-07-21 20:44:19 -05:00
TellowKrinkle
ee3f2b8fcb
VideoBackends:Metal: Implement PerfQuery
2022-07-21 20:44:19 -05:00
TellowKrinkle
c48035908c
VideoBackends:Metal: Use unified memory path by default on all GPUs
2022-07-21 20:44:19 -05:00
TellowKrinkle
6ee0248eab
VideoBackends:Metal: MSAA support
2022-07-21 20:44:19 -05:00
TellowKrinkle
c0fd128171
VideoBackends:Metal: Use base vertex
2022-07-21 20:44:19 -05:00
TellowKrinkle
5742ccf8de
VideoBackends:Metal: Cache pipelines
...
Metal pipelines hold less stuff than Dolphin pipelines, so duplicates will appear
2022-07-21 20:44:19 -05:00
TellowKrinkle
e32213d031
VideoBackends:Metal: Create samplers on demand
2022-07-21 20:44:19 -05:00
TellowKrinkle
61705b05da
VideoBackends:Metal: FBFetch for Intel GPUs
2022-07-21 20:44:19 -05:00
TellowKrinkle
a5ef9dfd53
VideoBackends:Metal: Use DriverDetails for bugs
2022-07-21 20:44:19 -05:00
TellowKrinkle
716c0980d7
VideoBackends: Add Metal renderer
2022-07-21 20:44:19 -05:00
Admiral H. Curtiss
df399b0995
Merge pull request #10878 from Pokechu22/btreal-allow-libusb-descriptor-errors
...
BTReal: Treat libusb_get_string_descriptor_ascii failure as non-fatal warning
2022-07-22 02:00:13 +02:00
JosJuice
57f106d521
Merge pull request #10625 from codedwrench/xlink-kai-android-support
...
Android: XLink Kai Android UI option
2022-07-21 18:25:16 +02:00
codedwrench
98c688ee68
Android: XLink Kai Android UI option
2022-07-21 13:48:17 +02:00
Pokechu22
6eaa4a4e89
DSPHLE: Add HLE version of libaesnd ucode
2022-07-20 18:41:47 -07:00
Pokechu22
5e64f453ab
DSPHLE/ASnd: Rename m_next_command_is_voice_addr to m_next_mail_is_voice_addr
2022-07-20 18:41:47 -07:00
Pokechu22
75ae3b7ec4
DSPHLE: Fix comment in libasnd uCode
2022-07-20 18:41:47 -07:00
Pokechu22
76fd0479b8
JitAsm: Remove old commented-out code
...
I'm not sure what the XMM0 check was supposed to be, but the 0xCC008000 one is for the fifo and is handled elsewhere now (look for `optimizeGatherPipe`).
2022-07-20 16:38:54 -07:00
Léo Lam
e40be6e8fd
Merge pull request #10865 from JosJuice/volume-verifier-ios-case
...
VolumeVerifier: Ignore case when looking for IOS on update partition
2022-07-20 20:41:55 +01:00
Admiral H. Curtiss
a1e8e60c4c
IOS: Add IOSC::KeyEntry::misc_data to savestate.
2022-07-20 21:32:44 +02:00
Pokechu22
a23a7f7b10
BTReal: Treat libusb_get_string_descriptor_ascii failure as non-fatal warning
2022-07-20 11:21:23 -07:00
JosJuice
01e4ce54c8
Android: Call WiimoteReal::InitAdapterClass before controller init
...
Should fix https://bugs.dolphin-emu.org/issues/12980 .
2022-07-19 23:00:21 +02:00
Admiral H. Curtiss
b0b5faa793
Merge pull request #10874 from JosJuice/cmpr-layout
...
VideoCommon: Fix CMPR compute shader layout
2022-07-19 12:05:29 +02:00
Admiral H. Curtiss
ec3cfc01c1
DiscIO/DirectoryBlob: Add callback to modify sys files before they're added to the disc.
2022-07-19 00:55:04 +02:00
Admiral H. Curtiss
cc315cb7af
DiscIO/Riivolution: Add dolphin-specific extensions "dolphin_sys_file" and "dolphin_sys_folder" to patch sys files like you would patch regular files.
2022-07-19 00:55:04 +02:00
Admiral H. Curtiss
f5c132580c
DiscIO/DirectoryBlob: Add ContentSource that stores data locally in std::vector.
2022-07-19 00:55:03 +02:00
Admiral H. Curtiss
9e5bc98496
DiscIO/RiivolutionPatcher: Skip main.dol patches if no main.dol was given.
2022-07-19 00:55:03 +02:00
Admiral H. Curtiss
fa30ba18f5
Merge pull request #10783 from JosJuice/frontend-controller-init
...
Require frontend to initialize controllers
2022-07-19 00:50:32 +02:00
Admiral H. Curtiss
dd67d5fbc4
Merge pull request #10871 from shuffle2/logging
...
logging improvements
2022-07-18 19:05:08 +02:00
JosJuice
1a2bc2eff9
VideoCommon: Fix CMPR compute shader layout
...
Looks like a copy-paste gone wrong. The compute shaders for the other
formats use a group size of 8 * 8, whereas the CMPR compute shader
is supposed to use a flattened 64 * 1 as I understand it.
2022-07-18 18:56:50 +02:00
Shawn Hoffman
28828435bb
Qt/LogWidget: remove extra space
2022-07-18 09:52:54 -07:00
Shawn Hoffman
0a15d2fcec
cubeb: fix logged source file paths
2022-07-18 09:52:54 -07:00
Shawn Hoffman
ad3e202af0
vs likes caps for guids in sln
2022-07-17 23:42:05 -07:00
TellowKrinkle
88c85ce471
VideoCommon: Fix IsDualSrc check for dst blend factors
2022-07-17 20:50:53 -05:00
Joon Park
319288de8e
Fix OpenGL error on M1 Mac.
...
Followup to #10466 . Resolves the following error:
ERROR: 0:85: '&' does not operate on 'uvec3' and 'int'
2022-07-17 08:54:39 -04:00
JosJuice
dabad82219
Require frontend to initialize controllers
...
We currently have two different code paths for initializing controllers:
Either the frontend (DolphinQt) can do it, or if the frontend doesn't do
it, the core will do it automatically when booting. Having these two
paths has caused problems in the past due to only one frontend being
tested (see de7ef47548
). I would like to get rid of the latter path to
avoid further problems like this.
2022-07-17 14:03:04 +02:00
JosJuice
2f3c0cdbc5
Split out controller initialization to UICommon
2022-07-17 14:02:03 +02:00
JosJuice
81a20a1d74
VolumeVerifier: Ignore case when looking for IOS on update partition
...
One of the Dragon Quest X expansions (S4SJGD) uses lowercase instead of
the usual uppercase for the IOS59 file on its update partition.
2022-07-17 09:20:12 +02:00
CasualPokePlayer
581fd2b1e3
Fix SYSCONF movie settings
...
The movie config layer is not active for recording, only playback. Thus, recording ends up stuck with default SYSCONF settings.
The fix is simply to add in the movie config layer when recording. The way it's done is a bit hacky, but seems to work.
2022-07-16 23:16:35 -07:00
JMC47
70b0b03c3c
Merge pull request #10747 from tellowkrinkle/LateUIDFixup
...
Add a post-cache shader UID fixup pass
2022-07-17 00:43:16 -04:00
JMC47
f1d23ff9a4
Merge pull request #10466 from Pokechu22/efb-copy-gamma
...
Accurately handle the copy filter and gamma for EFB and XFB copies
2022-07-17 00:07:50 -04:00
Admiral H. Curtiss
2ef069e0e8
Merge pull request #10833 from sepalani/BBA-log
...
NetworkCaptureLogger: Add GameCube BBA support
2022-07-16 21:44:08 +02:00
JosJuice
c2b32916aa
Android: Add subheadings to Wii config
2022-07-16 11:40:51 +02:00
OatmealDome
2eecfc8595
WiiPane: Adjust capitalization of conversion buttons and alert titles
2022-07-16 04:08:55 -04:00
OatmealDome
60aaa308bf
WiiPane: Trim automatic SD sync checkbox string
2022-07-16 04:00:26 -04:00
Pokechu22
a6e06f38ad
Add notes about precision of YUV->RGB conversion factors for XFB
2022-07-16 00:07:10 -07:00
Pokechu22
2f43889141
Software: Use hardware-verified numbers for RGB->YUV conversion
2022-07-16 00:07:10 -07:00
Pokechu22
e7339d63f1
Rework TextureConversionShader for hardware accuracy and simplicity
2022-07-16 00:07:10 -07:00
Pokechu22
b16ec5b6dc
Rework TextureConverterShaderGen for hardware accuracy and simplicity
2022-07-16 00:07:10 -07:00
Pokechu22
791bd16b28
Restructure parameters to TetxureConverterShaderGen/TextureConversionShader
...
This will be used for later refactoring for increased accuracy.
2022-07-16 00:07:10 -07:00
TellowKrinkle
89ae060214
VideoCommon: Increase uniform stream buffer size to 64mb
...
Densha De Go uses 27mb per frame, and we want enough space for the CPU to be encoding one frame while the GPU is rendering the previous
2022-07-15 18:21:50 -05:00
TellowKrinkle
fb5648541c
VideoCommon: Remove dstalpha from BlendingState
...
It's not supported by any PC graphics API, and therefore completely unused
2022-07-15 15:31:47 -05:00
TellowKrinkle
991024173e
VideoCommon: Always use fbfetch in ubershaders if available
...
Reduce the number of different pipelines needed. Also works around drivers that break when you combine fbfetch with dual source blending
2022-07-15 15:31:47 -05:00
Pokechu22
d20094efa2
Add extra Low and High fields to CopyFilterCoefficients
...
This struct is the only one in BPMemory that uses u64 as its base. These fields are to allow viewing it as two u32s instead. It's not used by Dolphin right now, but it is used in the copy of BPMemory.h used by hwtests.
2022-07-15 12:29:40 -07:00
Pokechu22
bed278d3b7
Create dedicated enum for EFB/XFB gamma correction
...
This also changes the behavior for the invalid gamma value, which was confirmed to behave the same as 2.2.
Note that currently, the gamma value is only used for XFB copies, even though hardware testing indicates it also works for EFB copies. This will be changed in a later commit.
2022-07-15 12:29:40 -07:00
Pokechu22
dd41a72378
Only use intensity formats if both intensity_fmt and auto_conv are set
...
auto_conv is normally always set for EFB copies, but hardware testing indicates that intensity_fmt does nothing if auto_conv is not set.
2022-07-15 12:29:40 -07:00
Pokechu22
cd2cc5fa22
Rename EFB copy bit 2 from yuv to unknown_bit
...
It was named yuv in 522746b2c2
, but hardware testing indicates that that bit does nothing (the intensity format bit enables YUV conversion, instead).
2022-07-15 12:29:40 -07:00
Pokechu22
850e524514
Use fmt::to_string for texture format overlay
...
This required adding parentheses to the font used by that.
2022-07-15 12:29:40 -07:00
Pokechu22
290e62f179
Remove casts to integers for texture and EFB formats
...
The only remaining casts for these types that I know of are in TextureInfo (where format_name is set to the int version of the format, and since that affects filenames and probably would break resource packs, I'm not changing it) and in TextureDecoder_Common's TexDecoder_DrawOverlay, which will be handled separately.
2022-07-15 12:29:40 -07:00
Admiral H. Curtiss
89067e66f9
InputCommon: Get rid of static strings.
2022-07-15 19:53:10 +02:00
JosJuice
4e7b0f2129
Android: Add divider to landscape version of User Data activity
2022-07-15 19:32:03 +02:00
Admiral H. Curtiss
537fe33997
Merge pull request #10843 from Pokechu22/freelook-background-input
...
Free Look: Add background input setting (disabled by default)
2022-07-14 19:08:29 +02:00
Admiral H. Curtiss
a739f63d96
Merge pull request #10840 from AdmiralCurtiss/cmake-windows-sdl
...
Fix CMake Windows build after SDL merge.
2022-07-14 19:05:25 +02:00
TellowKrinkle
6ab24e6c17
VideoCommon: Better driver bug handling
...
Adds a pass to process driver deficiencies between UID caching and use, allowing a full view of the whole pipeline, since some bugs/workarounds involve interactions between blend modes and the pixel shader
2022-07-13 21:51:24 -05:00
JMC47
e237aa1435
Merge pull request #10777 from tellowkrinkle/EFBFlush
...
VideoCommon: Remember to flush command buffers after multiple EFB copies
2022-07-13 19:45:31 -04:00
Pokechu22
25aa30ac69
Free Look: Add background input setting (disabled by default)
...
Before, Free Look would accept background input by default, which means it was easy to accidentally move the camera while typing in another window. (This is because HotkeyScheduler::Run sets the input gate to `true` after it's copied the hotkey state, supposedly for other threads (though `SetInputGate` uses a `thread_local` variable so I'm not 100% sure that's correct) and for the GBA windows (which always accept unfocused input, presumably because they won't be focused normally).
2022-07-13 15:23:00 -07:00
JMC47
5663a44962
Merge pull request #10842 from tellowkrinkle/ClearBackendInfo
...
VideoCommon: Clear backend_info before populating
2022-07-13 16:40:46 -04:00
Admiral H. Curtiss
bae715f396
Merge pull request #10838 from AdmiralCurtiss/volume-verifier-out-of-bounds-read
...
DiscIO/VolumeVerifier: Avoid out-of-bounds reads on trimmed Wii ISOs.
2022-07-13 18:49:24 +02:00
Admiral H. Curtiss
10407cc8c1
DiscIO/VolumeVerifier: Don't try to verify data that would read out of bounds.
2022-07-13 13:35:18 +02:00
JMC47
cb350aed53
Merge pull request #10841 from tellowkrinkle/FBFetchLogicOpMasking
...
VideoCommon: Properly mask fbfetch logic op emulation
2022-07-13 03:56:14 -04:00
TellowKrinkle
f83015649c
VideoCommon: Clear backend_info before populating
2022-07-13 02:55:54 -05:00
TellowKrinkle
6bd0fc86ba
VideoCommon: Properly mask fbfetch logic op emulation
2022-07-13 02:27:45 -05:00
Admiral H. Curtiss
e79c7d4985
InputCommon: Don't force-link against SDL2.lib on Windows.
2022-07-13 01:37:05 +02:00
Sepalani
76fe7b6497
NetworkCaptureLogger: Add GameCube BBA support
2022-07-12 13:35:49 +04:00
Admiral H. Curtiss
2d8d3358c4
FatFsUtil: Skip past entries with invalid filenames.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
de9c9f2281
FatFsUtil: Improve error handling and error reporting.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
d2910b5753
Qt: Add 'convert now' buttons for the SD card in the WiiPane.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
f40eeebcf0
FatFsUtil: Add some path traversal attack protection when unpacking.
2022-07-11 23:11:42 +02:00
Admiral H. Curtiss
a621fdf857
Core: In deterministic mode, build SD cards with a consistent filename order and dummy timestamps.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
1d12e95404
Qt: Put Wii SD card path and SD sync folder fields in the WiiPane.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
a5b1bfef68
Common: Change default path for Wii SD cards to not be inside the Wii NAND.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
4bf75c950b
Qt/WiiPane: Add checkbox for SD card folder syncing.
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
77d4591fb4
Core: If configured, sync SD card image with SD card folder on emulation start and end.
...
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:41 +02:00
Admiral H. Curtiss
b66cc1caf6
Config and UICommon: Add config option and user path for Wii SD card sync folder.
2022-07-11 23:11:40 +02:00
Admiral H. Curtiss
96751c4457
Treewide: Rename references to SD Card image path to clarify they mean the image file, not the folder.
2022-07-11 23:11:40 +02:00
Admiral H. Curtiss
fdc327c252
Externals/FatFs: Build as part of Dolphin.
...
Co-authored-by: Pablo Stebler <pablo@stebler.xyz>
2022-07-11 23:11:37 +02:00
Admiral H. Curtiss
32523f155b
Merge pull request #10825 from Rudolchr/fix_build_with_libfmt-9
...
MsgHandler: Add a check for libfmt version to fix build with libfmt-9
2022-07-11 23:02:08 +02:00
Admiral H. Curtiss
20059776d9
Merge pull request #10831 from sepalani/BBA-cleanup
...
Common/Network+BBA/Builtin: Cleanup
2022-07-11 23:00:21 +02:00
JMC47
b2be9b40cc
Merge pull request #10561 from shuffle2/sdl-motion
...
ControllerInterface: Add support for motion and rumble to SDL backend
2022-07-11 16:28:30 -04:00
Pokechu22
6cc8adb3ae
DVDInterface: Mask upper bits of DIMAR in GC mode
...
The masking was removed in d3aad1d6d5
, based on a Wii hardware test. Based on https://bugs.dolphin-emu.org/issues/12970 the masking should apply in GameCube mode, though.
2022-07-10 18:00:07 -07:00
Admiral H. Curtiss
99eef44765
Merge pull request #10832 from tellowkrinkle/FixCTZ
...
Common: Fix CountTrailingZeros for weird compilers
2022-07-11 02:12:45 +02:00
JMC47
cce6133ef6
Merge pull request #10749 from tellowkrinkle/IntelUbershaders
...
VideoCommon: Fix ubershaders on MoltenVK Intel
2022-07-10 19:35:55 -04:00
Shawn Hoffman
54b4ad8f55
ci/sdl: pump messages for SDL_hidapi so device detection works
2022-07-10 15:39:06 -07:00
Shawn Hoffman
ddf83462ac
sdl: enable SDL_HINT_JOYSTICK_THREAD
...
fixes window message pumping
2022-07-10 15:39:06 -07:00
Shawn Hoffman
655fb94e61
ci/win32: give the wndclass a unique name
...
other things (like SDL) may try to use "Message"
2022-07-10 15:39:06 -07:00
Shawn Hoffman
dd20c7cf78
ci/sdl: re-add the x360 controller block
2022-07-10 15:39:06 -07:00
Shawn Hoffman
3f7a2c6d4d
ci/sdl: minor cleanup
2022-07-10 15:39:06 -07:00
Jun Bo Bi
ceed42a0ee
Add SDL as a submodule
2022-07-10 15:38:59 -07:00