Commit Graph
100 Commits
Author SHA1 Message Date
JosJuice 7eece76e2b Merge pull request #11053 from t895/top-app-bar
Android: Change top app bar color on scroll
2022-09-14 08:28:24 +02: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
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
JosJuice 05869734ed Merge pull request #11055 from t895/edge-effect2
Android: Remove other color edge effect definitions
2022-09-11 21:28:34 +02: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
JosJuice 13ec18270b Merge pull request #11046 from t895/text-color
Android: Fix save state menu text color
2022-09-11 09:24:34 +02: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
JosJuice 2bbae05849 Merge pull request #11006 from t895/target33
Android: Update target SDK version
2022-09-09 21:07:17 +02:00
JosJuice 48c9c224cf Translation resources sync with Transifex 2022-09-03 18:21:58 +02: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
JosJuice 32ea725a10 Merge pull request #11010 from OatmealDome/mvk-mojave-patch
MoltenVK: Add patch to resolve a crash on macOS Mojave
2022-08-27 19:34:43 +02: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
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
JosJuice cc3e6a11ac Merge pull request #10999 from t895/dependencies
Android: Update SDK and dependencies
2022-08-21 21:22:27 +02:00
JosJuice 46a11bc6b0 Translation resources sync with Transifex 2022-08-21 20:15:41 +02:00
JosJuice 052fdfa00d DiscIO: Fix an incorrect error check in NFSBlob 2022-08-21 00:06:53 +02: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
JosJuice 924a4ee0be Merge pull request #10993 from shuffle2/gamelist-cache
qt: defer writing gamelist cache until EndRefresh
2022-08-20 10:02:12 +02:00
JosJuice 86d760b814 Merge pull request #10984 from shuffle2/verifydev
fix verifying wii dev signatures
2022-08-17 17:41:46 +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
JosJuice d29b349a0c Merge pull request #10975 from Pokechu22/android-docs-command-line
Android: Improve documentation on command-line build
2022-08-11 23:07:18 +02: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
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
JosJuice 6fbc1cbcce Merge pull request #10938 from Pokechu22/android-signing-config
Android: Don't set the signingConfig if keystore property isn't set
2022-08-10 20:26:59 +02:00
JosJuice d69f38f415 Merge pull request #10963 from shuffle2/notime
back out using std::chrono for timezone stuff
2022-08-07 09:08:20 +02: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
JosJuice 7b2b559743 Translation resources sync with Transifex 2022-08-06 15:50:00 +02: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
JosJuice 939fa1ed1c Merge pull request #10941 from shuffle2/crypto-cleanup
Crypto cleanup
2022-08-05 12:12:34 +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.
https://gitlab.axiodl.com/AxioDL/nod/blob/c1635245b881ed0004ff5e616896579ce1b19164/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
JosJuice b39d8f1ce4 Merge pull request #10911 from shuffle2/fast-default-verify
VolumeVerifier: enable fast hash functions by default
2022-08-03 16:55:04 +02: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
JosJuice de5499f3bd Translation resources sync with Transifex 2022-07-29 22:48:43 +02: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
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
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
JosJuice 3ad2172162 Translation resources sync with Transifex 2022-07-25 10:55:01 +02: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
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
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
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
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
JosJuice 559f5a6dfb Merge pull request #10877 from JosJuice/android-real-wiimote-early
Android: Call WiimoteReal::InitAdapterClass before controller init
2022-07-20 16:45:31 +02: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
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
JosJuice f43fa8a2a8 Merge pull request #10870 from shuffle2/sln
vs: uppercase a guid in the sln
2022-07-18 18:54:33 +02:00
JosJuice f0eb7b42e2 Merge pull request #10866 from dvessel/OpenGLerror085
Fix OpenGL error on M1 Mac.
2022-07-17 19:34:47 +02: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
JosJuice c2b32916aa Android: Add subheadings to Wii config 2022-07-16 11:40:51 +02:00
JosJuice 4e7b0f2129 Android: Add divider to landscape version of User Data activity 2022-07-15 19:32:03 +02:00
JosJuice 6e09b13ce3 Merge pull request #10829 from AdmiralCurtiss/spirv-cross-cmake-fix
Fix CMake Windows build after #10673 (HLSL from SPIRV).
2022-07-10 09:08:24 +02:00
JosJuice 0ebc510e6f JitArm64: Pass 32-bit temp GPR to WriteConditionalExceptionExit
If a 64-bit register is passed to WriteConditionalExceptionExit,
the LDR instruction in it will read too much data. This seems
to be harmless right now, but causes problem in one of my PRs.
2022-07-09 21:19:25 +02:00
JosJuice 6f40981ac0 JitArm64: Fix GPR unlocking in psq_stXX
This is what happens when I copypaste things a bit too quickly
2022-07-09 20:10:00 +02:00
JosJuice 77f8e98fee Merge pull request #10824 from AdmiralCurtiss/optional-palette-format-fix
ShaderCache: Fix inverted usage of palette_format.
2022-07-09 17:19:22 +02:00
JosJuice c3b7019eb3 Translation resources sync with Transifex 2022-07-05 23:36:12 +02:00
JosJuice 2a791116f1 Merge pull request #10800 from Pokechu22/registerwidget-crash
RegisterWidget: Fix crash when right-clicking when there is no selected cell
2022-07-02 09:18:28 +02:00
JosJuice 07a15a3228 Merge pull request #10624 from Minty-Meeo/resolve-gcc-warnings
Resolve Linux GCC Warnings
2022-07-02 09:17:44 +02:00
JosJuice 469aac5e68 Translation resources sync with Transifex 2022-07-01 00:13:41 +02:00
JosJuice 9e97377690 Android: Refactor reading "wiiController" preference
This had a lot of duplicated code and magic numbers.
2022-06-27 11:20:25 +02:00
JosJuice 1d772176a2 Revert "Partially revert "Android: Clean up hardcoded platform names""
This reverts commit 98bdf3b1ce.
2022-06-27 08:31:06 +02:00
JosJuice 2b36587af7 Android: Add app link intent URI to channels projection
This a proper fix for https://bugs.dolphin-emu.org/issues/12561,
which was previously fixed by a hackfix in 98bdf3b1ce.
2022-06-27 08:30:27 +02:00
JosJuice 57750f3d8f Translation resources sync with Transifex 2022-06-21 21:51:57 +02:00
JosJuice fafc78b9b5 Re-run code formatting after update to Android Studio 2022.2
Android Studio 2022.2 "Chipmunk" changes the code formatting rules a
little. Let's apply the new formatting in this PR so that the lint bot
doesn't take it out on innocent PRs.
2022-06-20 17:41:41 +02:00
JosJuice 107a928452 Merge pull request #10748 from tellowkrinkle/SDL22Fun
InputCommon: SDL 2.0.22 init crash workaround
2022-06-15 18:02:59 +02:00
JosJuice 82b0098c3b Merge pull request #10737 from Tilka/alignas
Common: replace std::aligned_storage_t with alignas
2022-06-13 18:11:48 +02:00
JosJuice 62ec19c1ba JitArm64: Remove redundant line in the EmitBackpatchRoutine comment
All stores clobber X0, so that stores clobber X0 when emitting_routine
is true is nothing special.
2022-06-12 11:03:38 +02:00
JosJuice 75e897c40e JitArm64: Fix a minor mistake in the EmitBackpatchRoutine comment
X30 is used in fewer situations than the comment was claiming.

(I think that when I wrote the comment I was counting the use of X30
as a temp variable in the slowmem code as clobbering X30, but that
happens after pushing X30, so it doesn't actually get clobbered.)
2022-06-12 11:03:37 +02:00
JosJuice 3de49dee78 JitArm64: Properly reserve scratch register for soft MMU
Cleans up a hack from the previous commit.
2022-06-12 11:03:35 +02:00
JosJuiceandOatmealDome 3dce1df00e JitArm64: Implement "soft MMU"
This is used when fastmem isn't available. Instead of always falling
back to the C++ code in MMU.cpp, the JIT translates addresses on its
own by looking them up in a table that Dolphin constructs. This is
slower than fastmem, but faster than the old non-fastmem code.

This is primarily useful for iOS, since that's the only major platform
nowadays where you can't reliably get fastmem. I think it would make
sense to merge this feature to master despite this, since there's
nothing actually iOS-specific about the feature. It would be of use
for me when I have to disable fastmem to stop Android Studio from
constantly breaking on segfaults, for instance.

Co-authored-by: OatmealDome <[email protected]>
2022-06-12 11:03:25 +02:00
JosJuice ebd5904b38 Merge pull request #10736 from JMC47/UltiShootColl-INI
Add Medium Texture Cache setting to Ultimate Shooting Collection INI.
2022-06-11 19:40:34 +02:00
JosJuice bcc64a05b3 Memmap: Remove outdated comments for 32-bit 2022-06-09 19:51:36 +02:00
JosJuice 63283dcc72 JitArm64: Refactor EmitBackpatchRoutine parameters, part 2 2022-06-09 19:51:36 +02:00
JosJuice 27ed2a99a0 JitArm64: Refactor EmitBackpatchRoutine parameters, part 1 2022-06-09 19:51:36 +02:00
JosJuice dd0485389e AndroidManifest.xml: Re-add package="org.dolphinemu.dolphinemu"
Without this, debug builds of Dolphin fail to launch. The OS tries
to locate org.dolphinemu.dolphinemu.debug.DolphinApplication
but fails to find it because its actual name is
org.dolphinemu.dolphinemu.DolphinApplication.

Partially reverts 6b74907f9d.
2022-06-06 21:57:21 +02:00
JosJuice 5354f69d45 Merge pull request #10666 from AdmiralCurtiss/riivolution-error-001
IOS/DI: Fake the error 001 read when running DirectoryBlobs or Riivolution-patched games.
2022-05-22 09:28:23 +02:00
JosJuice 44ceba89ea Merge pull request #10651 from t895/dependencies
Android: Upgrade dependencies
2022-05-10 20:47:52 +02:00
JosJuice 001b05f889 Merge pull request #10649 from t895/gradle
Android: Upgrade gradle to 7.2.0
2022-05-10 18:05:43 +02:00
JosJuice e19b995a1c Merge pull request #10644 from shuffle2/hide-balloon
Qt: hide balloon tooltip when parent gets hidden
2022-05-08 17:46:12 +02:00
JosJuice 299d5c0141 Merge pull request #10591 from AdmiralCurtiss/memmap-state-crash
HW/Memmap: Refuse to load savestate if memory settings are different.
2022-05-08 14:49:11 +02:00
JosJuice 31232f8c23 Merge pull request #10608 from t895/theme-refactor
Android: Modernize theming system
2022-05-08 11:37:35 +02:00
JosJuice b6b7030482 PowerPC: Add HW_PAGE_MASK constant 2022-05-07 19:37:44 +02:00